• jquery动态移除/增加onclick属性详解


    本文章给大家介绍利用jquery的removeAttr与attr事件来给a标签增加与删除onclick事件的具体操作方法,有需要了解的朋友可参考。

    要实现效果:点击链接先去掉onclick属性,3秒后再自动加上该标签中的onclick属性

    jQuery中,针对标签属性的操作都是使用attr()方法来实现的,比如:$("a").attr("onclick")可获得a标签的onclick属性,对应的:

    增加事件

     $(选择器).attr(属性名) 它的作用就是获取指定元素( $(选择器)部分 )的指定属性的值

    如设置onclick属性:$("a").attr("onclick","test();");

    删除事件 

    $(selector).removeAttr(attribute)

    例如 删除onclick属性:$("a").removeAttr("onclick");
    理论上上面的代码没问题,但实际上上面语句不执行也不报错,后来发现原因:

    jquery 1.6之前的版本并不支持attr()方法对标签onclick属性的相关操作!

    换句话说要使用attr()方法操作标签中的onclick属性必须使用jq库1.6或更新的库版本!

    <script type="text/javascript" src="jquery.min.js"></script><script type="text/javascript">
    $(function(){
     $(".b").click(function(){
      $(this).removeAttr("onclick");
      setTimeout(function(){
       $(".b").attr("onclick","test();");
       },3000)
      })
     })
    function test(){}
    </script>
    <p>
     <a class="b" href="#" onclick="test();">点击去掉该链接的onclick属性,3秒后再自动加上该onclick属性</a>
    </p>
    jquery中删除属性的关键词是: removeAttr 注意A是大写


    jquery还有一个解除事件委派的方法:unbind([eventType])。参数是可选的,如果不选,则表示移除节点所有已绑定事件。
    这里你只需要解除click事件,可以用$("#s1").unbind("click")来处理。

  • 相关阅读:
    AJAX MANAGER
    关闭IE浏览器的自动RSS阅读功能
    WCF REST Configuration for ASP.NET AJAX and plain REST Services
    jquery, json与ashx的完美结合
    ASP.NET 页面中的 ValidateRequest属性
    ASP.NET中的healthMonitoring
    GZip Compress SoapExtension
    ASP.NET MVC : UrlHelper
    Microsoft Ajax Content Delivery Network
    ASP.NET: TextBox控件如果设置为ReadOnly则PostBack之后可能丢失数据的问题
  • 原文地址:https://www.cnblogs.com/archermeng/p/7537307.html
Copyright © 2020-2023  润新知