zoukankan      html  css  js  c++  java
  • JS给页面标签添加事件(或超链接链接)

        先说一个要求,大家知道一个新闻的详细页里面,有很多的文字和图片,新闻信息一般都是采用文本编辑器录入发布的,比如插入图片就及时显示,但是插入图片显示出来的一般是<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())) 

  • 相关阅读:
    Mimblewimble:新型的隐私保护协议
    权益证明生态系统
    理解去中心化身份
    TPS 是一种糟糕的评价标准
    以太坊 2.0 :双生以太奇谭
    以太坊 2.0:信标链
    以太坊 2.0:验证者详解
    论共识机制
    以太坊钱包开发系列
    将不确定变成确定~LINQ DBML模型可以对应多个数据库吗
  • 原文地址:https://www.cnblogs.com/peaceli/p/1364985.html
Copyright © 2011-2022 走看看