jQuery 1.9/2.0/2.1及其以上 on 无效的解决办法
博客专区 > zkool 的博客 > 博客详情
jQuery 1.9/2.0/2.1及其以上 on 无效的解决办法
zkool 发表于3年前
jQuery 1.9/2.0/2.1及其以上 on 无效的解决办法
  • 发表于 3年前
  • 阅读 119
  • 收藏 4
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

jQuery 1.9/2.0/2.1及其以上版本无法使用live函数了,然而jQuery 1.9及其以上版本提供了on函数来代替。 如果要绑定的on方法是动态加载出来的元素,那么这样使用就是没有用的。

<script>

$(document).ready(function(){ $("#div1").click(function(){ $("<div class='test'>test</div>").appendTo($("#div1")); }); $(".test").on("click",function(){ $(".test").css("background-color","pink"); }); $("#div2").bind("click",function(){ $(this).css("background-color","pink"); }); }); </script>

$(document).ready(function(){ $("#div1").click(function(){ $("<div class='test'>test</div>").appendTo($("#div1")); }); $(document).on("click",".test",function(){//修改成这样的写法 $(".test").css("background-color","pink"); }); $("#div2").bind("click",function(){ $(this).css("background-color","pink"); }); });

究其元素就在于使用$(document)意义就在于使元素加载完后才执行方法,所以当为jQuery动态加载的元素绑定on方法的时候,使用$(document)设置代码脚本在DOM元素加载完成后开始执行。

标签: jquery on live
共有 人打赏支持
zkool
粉丝 49
博文 62
码字总数 17604
×
zkool
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: