Javascript 如何更改此图像的单击处理程序?

Javascript 如何更改此图像的单击处理程序?,javascript,jquery,html,Javascript,Jquery,Html,我有以下HTML: <img src='img.png' onclick='document.write("Hi there!")' /> 我期望发生的是,图像的单击处理程序被替换,单击它将生成一个警报对话框。相反,页面内容会发生更改,这是由标记中的单击处理程序指定的 如何在运行时更改单击处理程序 注意:这是一个可以播放的交互式演示: 您需要在单击时删除原始的onclick: $('img').removeAttr('onclick').click(function() { ...

我有以下HTML:

<img src='img.png' onclick='document.write("Hi there!")' />
我期望发生的是,图像的单击处理程序被替换,单击它将生成一个警报对话框。相反,页面内容会发生更改,这是由标记中的单击处理程序指定的

如何在运行时更改单击处理程序

注意:这是一个可以播放的交互式演示:

您需要在单击时删除原始的
onclick

$('img').removeAttr('onclick').click(function() { ... });

我不会使用onclick属性,而是使用jQuery click()

要解除事件绑定,请参见


这有帮助吗?

加载dom时事件是否绑定到元素,如果是这样,则
文档。write
仍会激发,不是吗。@罗伯特:什么?它将仅在单击元素时激发。
$('img').removeAttr('onclick').click(function() { ... });