jquery addClass函数的问题

0 jquery addclass

<script>    
$("ul#sol_menu li a").addClass(function()) {
var current_page = document.location.href;
if ($(this).attr.("href").match(current_page)) {
$(this).addClass('highlight');
};
});
</script>
Run Code Online (Sandbox Code Playgroud)

这有什么问题?

Jay*_*Are 5

我相信这可能就是你想要的......
而且正如SLaks指出的那样,你的语法(在这种情况下)有点残酷......

<script>    
    $(document).ready(function(){
        var current_page = document.location.href;
        $("ul#sol_menu li a").each(function(){
            if ($(this).attr('href') == current_page) {
                $(this).addClass('highlight');
            }
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

所以回答你的问题......你的代码出现以下错误:

  1. 根据您的脚本标记是否在ul元素之前或之后,您需要使用$(document).ready函数
  2. 您没有正确使用addClass回调...
  3. 你在addClass回调中有一个额外的括号"addClass(function()){"应该是"addClass(function(){"
  4. 没有.match方法就像你用过的那个......
  5. 你在这里遇到语法错误:'.attr.("href")'; '.attr'之后的任何时期都

    希望能回答你的问题.