通过javascript在scroll上添加css类
我有一个导航,在悬停上设置样式的每个锚定标记中都有一个空div html 我还有一个活动类,我在点击时附加了一些js。这目前工作正常通过javascript在scroll上添加css类,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个导航,在悬停上设置样式的每个锚定标记中都有一个空div html 我还有一个活动类,我在点击时附加了一些js。这目前工作正常 var currentDiv; function addSelected(){ if(currentDiv !== undefined){ $(currentDiv).removeClass("active"); } currentDiv = $(this).find('div'); $(currentDiv).addClass("activ
var currentDiv;
function addSelected(){
if(currentDiv !== undefined){
$(currentDiv).removeClass("active");
}
currentDiv = $(this).find('div');
$(currentDiv).addClass("active");
}
$(".menu a").click(addSelected);
我试图做的是根据用户滚动来附加相同的活动类。我让它大部分工作正常,但我似乎不知道如何将类附加到div,而不是锚定本身。这是我正在使用的js
js
但我所尝试的一切要么不起作用,要么给了我错误
编辑
这是我试图修改的小提琴
尝试将其更改为在单击处理程序中使用find():
"[href='#"+id+"']").find('div')
尝试将其更改为在单击处理程序中使用find():
"[href='#"+id+"']").find('div')
我想你已经试过了
"[href='#"+id+"']").parent().find('div')
和/或
"[href='#"+id+"'].div"
…如果是这样,您是否能够将
类
或id
添加到div
并以这种方式定位它?我假设您已经尝试过
"[href='#"+id+"']").parent().find('div')
和/或
"[href='#"+id+"'].div"
…如果是这样,您是否能够将类
或id
添加到div
中,并以此为目标?使用子类()
而不是父类()
或查找()
示例:
if (lastId !== id) {
lastId = id;
// add/remove active class on div
menuItems
.children().removeClass("active")
.end().filter("[href='#"+id+"']").children().addClass("active");
}
使用children()
而不是parent()
或find()
示例:
if (lastId !== id) {
lastId = id;
// add/remove active class on div
menuItems
.children().removeClass("active")
.end().filter("[href='#"+id+"']").children().addClass("active");
}
你目前的状况如何。你能提供一个提琴吗?它将类附加到锚点标记的父级,而不是锚点内的div标记。请提供你被卡住的完整代码。@dan,我更新了js以包含我正在使用的所有代码,这有帮助吗?你当前的状态是什么。你能提供一个提琴吗?它将类附加到锚点标记的父级,而不是锚点内的div标记。请提供你被卡住的完整代码。@dan,我更新了js以包含我正在使用的所有代码,这有帮助吗?这似乎找到了第一个,但仍然将类添加到父级,即使我将代码更新为这个
.end().filter(“[href=”#“+id+”]”)。find('div')。addClass(“active”)
这似乎找到了第一个类,但仍然将类添加到父类中,即使我将代码更新为.end().filter(“[href=”#“+id+”)”)。find('div')。addClass(“active”)代码>是的,我可以向div添加一个类,但我仍然不确定如何使用上述代码将该类作为目标。是的,我可以向div添加一个类,但我仍然不确定如何使用上述代码将该类作为目标。