因此,通过这段代码,我想显示一个覆盖图..mg show -info。elInfoLink的点击功能按计划工作。现在我应该让它的父对象也是可点击的,既然已经有了另一个事件,我想我应该像你在这里看到的那样做。现在,通过单击父对象,它的子对象的函数将被调用,console.log可以工作,但覆盖图不会显示。为什么?
var elInfoLink = tile.querySelector('.info-link');
if (elInfoLink) {
$(elInfoLink).parent().click(function (e) {
$(elInfoLink).click();
});
$(elInfoLink).click(function (e) {
e.preventDefault();
e.stopPropagation();
var mg = document.querySelector('#mg');
mg.classList.add('mg-show-info');
mg.dataset.memoryOverlayShowId = tile.dataset.id;
console.log("foo");
});
}
发布于 2016-11-30 16:49:51
编辑:正如@Rory所指出的,这与您的符号非常等效;而且它工作得很好。
.click()
方法是在元素上注册单击事件侦听器的简写。您想要做的是:
$(elInfoLink).parent().click(function (e) {
$(elInfoLink).trigger('click');
});
发布于 2016-11-30 17:05:11
从有限的代码来看,这里似乎没有“部分执行”。我会重新检查类mg-show-info
是否被添加到正确的元素中(以及该元素是否被正确选择),以及相关的CSS是否已加载。
https://stackoverflow.com/questions/40883795
复制相似问题