jquery on事件在IE8下失效的一种情况,及解决方法
结论:IE8以下jquery的on事件失效,有可能是使用了原生js,可以换jquery的事件来试试。
IE8以下失效例子如下:
有如下html结构:
<ul id=‘ul‘> <li class=‘li‘></li> </ul>
用jQuery 为ul下面的所有li绑定click事件。
$(‘#ul‘).on(‘click‘, ‘li‘, function(){ //do stuff alert(‘I am clicked!‘); });
假如要使ul中增加一个li,那么可以使用原生js这样子做。
var ul = document.getElementById(‘ul‘); var li = document.getElementsByClass(‘li‘); var newLi = li[0].cloneNode(true); ul.appendChild(newLi);
但是点击生成的li元素,不会触发alert。
这时使用jquery的插入方法却可以,代码如下。
var $li = $(‘.li‘); var $newLi = $li.clone(); $(‘#ul‘).append($newLi);
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。