我正在尝试在jQuery UI手风琴中分配一个与URL匹配的类。
示例:
在jQuery Accordion中,我有以下链接(它们不包含主机名):
这是动态生成的链接。
如果链接页面是当前打开的页面(在URL地址栏中处于活动状态),我希望能够为其中一个链接提供活动类。
理想情况下,我希望能够通过?pcat =单独检测,以防颜色发生变化。
任何人都知道如何做到这一点?正在尝试这段代码:
<script type="text/javascript">
$(document).ready(function() {
$(function(){
var matches;
if( matches = (new String(document.location)).match(/?pcat=/) ) {
$("a[href=" + matches[0] + "]").addClass('active');
}
});
答案 0 :(得分:0)
<击>
网址需要以颜色结束(href$=
):
if( matches = location.href.match(/\?pcat=(\w+)/) ) {
$('a[href$="' + matches[1] + '"]').addClass('active');
}
击> <击> 撞击>
编辑我刚刚意识到您的网址不以pcat=...
结尾。使用此选项来过滤包含匹配位置子字符串的<a>
:
if( matches = location.href.match(/\?(pcat=\w+)/) ) {
$('a[href*="' + matches[1] + '"]').addClass('active');
}
答案 1 :(得分:0)
快速谷歌给了我这个:
function getQuerystring(key, default_) {
if (default_==null) default_="";
key = key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var regex = new RegExp("[\\?&]"+key+"=([^&#]*)");
var qs = regex.exec(window.location.href);
if(qs == null)
return default_;
else
return qs[1];
}
如果网址为http://whatever.com/whatever.html?pcat=brown&image,此函数将返回“褐色”。
然后我猜这样的事情:
if($('a').text() == getQuerystring('?')) {
$(this).addClass('active');
}