2012-04-23 34 views
0

演示
http://jsfiddle.net/bRqAR/2/jQuery的点击 - 在IE e.target.classList未定义

这段代码并没有在Internet Explorer的工作(检查控制台)。
我该如何解决这个问题?

HTML

<div id="myDiv_1451" class="allDivs"> 
Hello 
    <div class="iconDiv"><img src="http://jsfiddle.net/img/keys.png" /></div> 
    <div style="clear:both;"></div> 
</div> 

JS

$(document).ready(function() { 

    $('.allDivs').click(function(e) 
    { 
     var divId = this.id.replace(/myDiv_/gi,''); 

     if(e.target.classList[0] == 'iconDiv' || e.target.parentElement.className == 'iconDiv') 
     { 
      alert('click on green iconDiv or on icon'); 
     } 
     else 
     { 
      alert('click on main'); 
     } 
    });            
}); 

提前感谢!

回答

1

IE给出了这样的错误:无法获得属性的值为 '0' :对象为空或未定义,因此将e.target.classList[0]更改为e.target.classList == 'iconDiv'

+0

快10秒。你可以得到积分;) 谢谢! – Peter 2012-04-23 13:03:31

1

我已经在IE浏览器尝试,

删除[0] e.target.classList[0] > replace with e.target.classList == 'iconDiv'

适用于Chrome和IE