Javascript 具有相同类的嵌套元素上的jquery单击事件
我是jquery的新手。我用相同的名字嵌套了Javascript 具有相同类的嵌套元素上的jquery单击事件,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我是jquery的新手。我用相同的名字嵌套了li。我想根据单击的li级别设置类打开时div的左侧位置。但当我在li中单击时,它占据了第一个位置 这是我的密码 $(“.child”)。在(“单击”,函数(){ var l=$(this).parents('ul').length var a=101*l; $(“.open”).css({ “左”:“-+a+”% }) }) 您必须禁用冒泡 $(".child").on("click", function(event) {
li
。我想根据单击的li
级别设置类打开时div
的左侧位置。但当我在li
中单击时,它占据了第一个位置
这是我的密码
-
-
$(“.child”)。在(“单击”,函数(){
var l=$(this).parents('ul').length
var a=101*l;
$(“.open”).css({
“左”:“-+a+”%
})
})
您必须禁用冒泡
$(".child").on("click", function(event) {
event.preventDefault(); // diasble default action
event.stopPropagination(); // disable bubbling to parent event
var l = $(this).parents('ul').length
var a = 101*l;
$(".open").css({
"left": "-" + a + "%"
})
})
未测试您必须禁用冒泡
$(".child").on("click", function(event) {
event.preventDefault(); // diasble default action
event.stopPropagination(); // disable bubbling to parent event
var l = $(this).parents('ul').length
var a = 101*l;
$(".open").css({
"left": "-" + a + "%"
})
})
未测试问题是,当您单击内部li时,两个li中都发生了单击,您可以在事件内部使用StopperPagation来防止这种情况发生问题是,当您单击内部li时,两个li中都发生了单击,您可以在事件内部使用stopPropagation来防止您可以使用
event.stopPropagation()停止传播代码>。
我添加了一个console.log()
,以便查看单击的内容
$(.child”)。在(“单击”上,函数(事件){
event.stopPropagation();
var l=$(this).parents('ul').length
var a=101*l;
log(“单击:”+$(this.find(“>a”).text());
$(“.open”).css({
“左”:“-+a+”%
})
})
-
-
您可以使用event.stopPropagation()停止传播代码>。
我添加了一个console.log()
,以便查看单击的内容
$(.child”)。在(“单击”上,函数(事件){
event.stopPropagation();
var l=$(this).parents('ul').length
var a=101*l;
log(“单击:”+$(this.find(“>a”).text());
$(“.open”).css({
“左”:“-+a+”%
})
})
-
-
您想将此应用于树中的所有子级还是仅应用于子级?检查此项。您想将此项应用于树中的所有子项还是仅应用于子项?看看这个。