我有以下
HTML菜单:
<ul> <li><a href="index.html">Index Page</a></li> <li><a href="#some-page">Some Page</a></li> </ul>
假设var url =“some-page”;
$('#menu li a').prop('href') .is('#' + url ) .parrent() .addClass('active');
我一直在收到错误信息.这不是一个功能.为什么? .is显然是一种功能.
任何建议都非常感谢.
解决方法
之前调用的prop()方法是()将href属性作为字符串返回.
字符串没有is()方法.
尝试;
$('#menu li a').filter('[href="' + url + '"]').parent().addClass('active');
虽然你可以将它组合成一个选择器;
$('#menu li a[href="' + url + '"]').parent().addClass('active');
请注意,如果任何匹配的元素与选择器匹配,则is()返回true或false;所以如果你想使用is(),可以使用以下表格;
$('#menu li a').each(function () { if ($(this).is('[href="#' + url +'"]')) { $(this).parent().addClass('active'); } });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。