$(document).ready(function(ev){
$('#comments-replybutton').click(function(ev){
alert('2 attach event');
ev.stopPropagation();
});
});
你的意思是,像这样?
评论后编辑
您还可以将函数命名为取消绑定:
var myEventHandler = function myFunction(ev){
$(this).unbind(myFunction);
alert('attach event 2');
ev.stopPropagation();
}
$('#comments-replybutton').bind('click', myEventHandler);
// $(something).click(fn) is just a shorthand to $(something).bind('click', fn);
编辑 2
我想你可以很容易地杀死原始事件,只需说 document.getElementById('comments-replybutton').onclick = "" 或类似的东西。您可以通过复制之前重新附加它:
var original_event_handler = $('#comments-replybutton')[0].onclick;
$('#comments-replybutton')[0].onclick = "";
$('#comments-replybutton').click(original_event_handler);
有点脏,但我懒得去查:S preventDefault 在这里帮不了你。
http://jsfiddle.net/C37ka/