有以下JS:
for (var catId in this.data.categories) {
(function (catId) {
$("li#tsCat-" + catId).click(function (event) {
$(this).addClass("tax-active");
event.stopPropagation();
})
}(catId))
for (var floor in this.data.floors) {
(function (floor, catId) {
var selector = "#tsCatFloor_" + catId + "_" + floor;
$(selector).on("click", function (event) {
$(this).addClass("active-filt");
event.stopPropagation();
});
}(floor, catId));
}
}
此代码形成两个级别列表
在单击第1级链接时,它会执行正确的单击处理程序$("li#tsCat-" + catId)
。
但是在点击第二级时它再次执行第一个处理程序$("li#tsCat-" + catId)
它需要执行第二个处理程序$(selector)
问题在哪里?
答案 0 :(得分:0)
抱歉,我没有提供完整视图,但有什么好处我发现了一个对每个人都有用的解决方案: 如果您正在添加.click()事件,请确保您已将数据(已针对其调用.click)放入DOM。否则.click永远不会被调用。