jquery - 当 url 哈希与 div 的 id 匹配时,对该 div 的子元素执行某些操作

标签 jquery html css url fragment-identifier

假设我的 html 如下:

<div class=".blog-item-holder">
<div id="AAAA"><div class="inner">AAAA</div></div>
<div id="BBBB"><div class="inner">BBBB</div></div>
<div id="CCCC"><div class="inner">CCCC</div></div> 
<div id="DDDD"><div class="inner">DDDD</div></div>
</div>

所以我的网址的到达范围将像这样重置:

example.com/page/#AAAA
and
example.com/page/#BBBB
and
example.com/page/#CCCC
and
example.com/page/#DDDD

我想要的是当人们访问该页面(例如:example.com/page/#BBBB)时,div#BBBB .inner 将有一个黑色背景,对于 CCCC、DDDD 等 url 的处理方式相同。

这是我到目前为止在 js 上得到的:

if(window.location.hash) {
var hash = window.location.hash.substring(1),
    boxes = [];

$('.blog-item-holder > div').each(function(){
    if ($(this).attr('id') == hash) {
        $(this).children('div').css("background-color:#000000;");
    }
});
}

但不知怎的,它似乎不起作用。

最佳答案

尝试使用 .css() 的正确语法:

$(this).children('div').css("background-color","#000000");

或者:

$(this).children('div').css({"background-color":"#000000"});

而不是:

$(this).children('div').css("background-color:#000000;");

关于jquery - 当 url 哈希与 div 的 id 匹配时,对该 div 的子元素执行某些操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23441197/

相关文章:

layout - 如何使 3 列布局填充 100% 宽度?

css - 位置固定在 Chrome 移动设备上导致滚动时出现问题

jquery - 需要在加载时淡入网页的全部内容,但平铺 bg 模式一直在做相反的事情

javascript - 使用 jQuery $.ajax() 时如何使用 GET 在请求正文中发送数据

jquery - 如何使用 jQuery 在选择框中预选选项

Jquery - 通过它的样式属性值捕获元素然后更改值

javascript - 获取表格中行的背景以通过单击更改?

javascript - Firebase + REST + jquery 产生奇怪的键

javascript - 位于内容下方的滑动面板?

javascript - 使用jquery(不是javascript)在 anchor 标记内附加html