惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
G
Google Developers Blog
博客园 - 司徒正美
J
Java Code Geeks
aimingoo的专栏
aimingoo的专栏
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
WordPress大学
WordPress大学
T
The Blog of Author Tim Ferriss
D
Docker
大猫的无限游戏
大猫的无限游戏
D
DataBreaches.Net
腾讯CDC
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Check Point Blog
M
MIT News - Artificial intelligence
Jina AI
Jina AI
I
InfoQ
雷峰网
雷峰网
The Cloudflare Blog
美团技术团队
Engineering at Meta
Engineering at Meta

博客园 - peace

MYSQL分页存储过程及事务处理 审批流设计方案的探究 WEB项目(B/S系统)打包安装(总结篇) 文件上传之断点续传方案 再次分享一个多选文件上传方案 SQL SERVER里的赋值机制闲聊 FLEX4.0开发流媒体视频播放器(总结篇) 告别ADO.NET实现应用系统无缝切换的烦恼(总结篇) SQL SERVER行转列应用小结 SQL SERVER函数——表值函数的处理 纠正网上流传的SQL取某一时间的当月第一天和最后一天的时间写法 SQL SERVER游标操作 告别.NET生成报表统计图的烦恼 发现联想手机P630型号的一个严重的系统Bug thinkpad T400型号安装server2003系统驱动共享 分享一个.NET版的多选文件上传操作示例 一个简单的httpModule应用 让默认焦点的按钮无虚框(又来无聊了) 利用ASP.NET日期控件制作“会议日程安排”(贴首页过把瘾)
JS给页面标签添加事件(或超链接链接)
peace · 2008-12-30 · via 博客园 - peace

    先说一个要求,大家知道一个新闻的详细页里面,有很多的文字和图片,新闻信息一般都是采用文本编辑器录入发布的,比如插入图片就及时显示,但是插入图片显示出来的一般是<img src='xxx.jpg' border=0 width=xxx height=xxx /> 并没有超链接的,严格说来在详细页面再给图片加个超链接必要性不是很大,因为一般详细也显示的图片基本上就和原图一样了,不必非要能点下图片在弹出一个新窗口,新窗口里又显示一个一模一样的图片,有时候也可能由于详细页面显示的图片和原图的尺寸有些出入,弹出个新窗口显示其完全大小的图片也合理,更多的情况是新闻信息显示的图片和原图是一样的了,如果客户非要怎么搞呢,那就搞了。。。当然不是去修改编辑器,那看得头疼的。。。

     在新闻信息页面添加一段JS是可以做到的,先找到内容区域的所有IMG标签,然给标签添加事件,相当于仿了一个超链接,主要用到attachEvent方法为元素动态添加onclick事件,如下:

<script type="text/javascript">
var a = document.getElementsByTagName("IMG");//找出所有的IMG标签 测试
//
var s = document.getElementById("DivContent");
//
var a = s.getElementsByTagName("IMG");//找出DivContent区域内所有的IMG标签
  function addClick()
  {
      
for(i=0;i<a.length;i++)
      {   
          a[i].attachEvent(
"onclick"new Function("method("+i.toString()+");")); 
          a[i].style.cursor 
= "pointer"
          a[i].alt 
= "点我"
      }
  }
  
function method(p)
  { 
    window.open(a[p].src);  
  }
  addClick();
</script>

要注意的是attachEvent里的方法如果带有参数的话,不能这样a[i].attachEvent("onclick", function(){method(i.toString());}) 或 a[i].attachEvent("onclick", method(i.toString()))