我正在尝试使用jQuery单击图像来调用函数。
我的HTML代码如下:
<div id="fixed-navbar">
<div class="nav-left">
<img id="back" src="back.png">
</div>
... (some other code)
</div>
在点击上面的图像时调用一个函数我正在编写脚本:
$("#back").on('click', '.nav-left', function(e) {
e.preventDefault();
window.history.back();
});
为什么这不起作用?
PS:这些div是动态添加的
答案 0 :(得分:3)
您在.nav-left
而不是#back
本身绑定了该事件。
$("#back").on('click', function(e) {
e.preventDefault();
window.history.back();
});
如果您的图像是在div.nav-left
元素内动态生成的,则只需要反转选择器。
$(".nav-left").on('click', '#back', function(e) {
e.preventDefault();
window.history.back();
});
如果所有你的内容是动态的,你需要这样做。
$("body").on('click', '#back', function(e) {
e.preventDefault();
window.history.back();
});
您可以指定未动态添加到页面的最近的封闭父元素,而不是body
。