Cannot read property 'firstChild' of undefined

<ul>
  <li onclick=abc();><a href="javascript:void(0);">12234588</a></li>
  <li onclick=abc();><a href="javascript:void(0);">12234588</a></li>
  <li onclick=abc();><a href="javascript:void(0);">12234588</a></li></ul><script>
  var abc =  function(){
     $(this).addClass("ab").siblings().removeClass("ab");
    }</script>

点击页面,提示的是错误是:Uncaught TypeError: Cannot read property 'firstChild' of undefined; 想问下这个是什么原因。。搞不懂

青春有我
浏览 1809回答 1
1回答

Helenr

你的写法有一定的问题,this指向的是windows,并不是你想指向的<li><ul> &nbsp;&nbsp;<li&nbsp;onclick="abc(this)"><a&nbsp;href="javascript:void(0);">12234588</a></li> &nbsp;&nbsp;<li&nbsp;onclick="abc(this)"><a&nbsp;href="javascript:void(0);">12234588</a></li> &nbsp;&nbsp;<li&nbsp;onclick="abc()"><a&nbsp;href="javascript:void(0);">12234588</a></li></ul><script> &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;abc&nbsp;=&nbsp;&nbsp;function(obj){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$(obj).addClass("ab").siblings().removeClass("ab"); &nbsp;&nbsp;&nbsp;&nbsp;}</script>这样就可以了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript