2017-06-20 30 views
-7
<script> 
    $(function() { 
     $('.headmenu li').click(function() { 
      $('.headmenu li').each(function (li) { 
       $(this).removeClass('selectedclass') 
      }); 
       $(this).addClass('selectedclass'); 
      }); 

     }); 
    </script> 

请给我替代以上jQuery功能的Javascript代码。我想为各自的jQuery功能使用Javascript代码?

+4

欢迎来到SO。这不是免费的代码服务,你sh应该发布你的尝试并展示你的努力。 – fcalderan

+0

[也许你可以在这里花费一些时间](http://youmightnotneedjquery.com/) – AitorFDK

+0

这个问题可能配制不好,但没有必要咆哮。寻找替代品可能会很困难,如果你不去哪里寻找,应该鼓励从jQuery上移动的IMO。 –

回答

1

You!在这里写多(嵌套)功能:

  • Element.addEventlistener(事件,回调)可以用来代替$。点击()。
  • 可以使用Array.forEach(callback,this)来替换$ .each()(forEach对于每个可迭代类型都不可用,但可以“转换/投射”可迭代类型)。
  • DOMTokenList.remove(令牌)可以被用来替换$ .removeClass()(element.classlist.remove( '类')。
  • DOMTokenList.add(令牌)可以被用来替换$ .addClass() (element.classlist.add(“类”)

注意:当使用回调,您可能需要使用function.bind(本),以确保正确的上下文传递

https://developer.mozilla.org/欲了解更多有关这些方法的信息,请点击这里。