【发布时间】:2013-04-29 16:30:36
【问题描述】:
当 URL 中包含哈希时,我正在尝试更改元素的 CSS。
网址看起来像
http://foo.com/base/something#item-itemID
URL 中唯一的静态部分是 #item- 位。 something 和 itemID 位发生变化。因此,每当 URL 中包含 #item(故意省略破折号)时,我都想更改
<ul class="side">
进入
<ul class="side hashed">
在为这个案例创建了一个特定的类之后,我设法根据我对 JS 和 JQuery 的理解不足编译了一段 JS 代码,以将这个类添加到元素中:
$(function() {
var loc = window.location.hash;
if(/^#item/.test(loc)) {
$('ul.side').addClass('hashed');
}
});
但它不起作用。
请帮忙。
任何正确方向的建议都非常感谢。
【问题讨论】:
-
你应该逐步调试这个:首先,检查
var loc是否真的包含你想要的URL,然后检查正则表达式是否真的有效......顺便说一句.test方法看起来很奇怪 -
等一下!!!!!!你到底想做什么? # 是否会真正针对具有 id 的特定元素,例如,
<li id="item-itemID">?