这里是我的标记:查找特定的元素,并用它做什么
<ul class="tab1">
<li><a href="http://site.com/some.html?param=1"></li>
<li><a href="http://site.com/some.html?param=2"></li>
<li><a href="http://site.com/some.html?param=3"></li>
...
</ul>
我想如果当前window.location的匹配任何名单锚进行比较,如果为真,那么我想要做一些像addClass('active')的东西。
我检查浏览器的当前位置和乘车从列表元素中的href参数代码:
// get current url parameter
var getBrowserUrl = document.URL.split('?')[1];
// get parameters of all the <li> anchors
jQuery('.tab1 a').each(function(){
var getElementUrl = jQuery(this).attr('href').split('?')[1];
if (getBrowserUrl == getElementUrl) {
jQuery(this).addClass('active');
}
});
(本)位显然是行不通的,因为jQuery的“这”将参考所有列表元素。
如何指定匹配列表元素?
没有,'this'将把每个匹配的元素反过来。你有什么应该工作。一旦找到匹配项,您可能想要返回false(打破迭代)。 – tvanfosson 2012-02-27 03:01:59
在.each()函数中,'this'依次是每个匹配元素;在你的代码中,有三个元素。 – 2012-02-27 03:06:47