我正在尝试使用其中包含图像的按钮来触发事件。浏览器是FF4。
<button>
<img src="/exp.jpg" />
</button>
的jQuery
$('img').bind('click', function() {
window.alert('I was clicked');
});
然而,这从未触发点击事件?任何人都可以指出我正确的方向,为什么以及我需要阅读什么来理解这种行为?
非常感谢,
的Si
更新 感谢大家的回答和评论。这种行为让我感到很奇怪,但现在才有意义。干杯!
答案 0 :(得分:1)
您的代码适用于Chrome,here's a demo。
然而,我尝试过的所有其他浏览器似乎都按照你说的做。
如果你真的在那个效果之后,可能必须使用CSS将图像定位在按钮上方。
Something like this demo应该为您提供更多的跨浏览器一致性。
答案 1 :(得分:0)
我不确定你为什么要那样做。单击图像也会导致单击该按钮。为什么不回到那个事件上呢?
答案 2 :(得分:0)
首先,这将起作用,但将是浏览器特定的,Town回答它确实有效,但它取决于您的浏览器,然后取决于该浏览器的版本。基本按钮功能被硬编码到浏览器中,所以改变它最好是错误的。我建议使用img和css来设置img边框和背景的样式,使其看起来像一个按钮。
说实话,你可以让它在两个甚至三个浏览器中工作,但开发人员的目标是尽可能地使它成为通用的(除了IE6之外),所以我会在设计领域使用你的技能实现你想要的,它将为你节省很多头痛。