单击事件似乎没有在此内存 html 块中的复选框上触发。它确实为按钮而不是复选框触发。
这是小提琴:http: //jsfiddle.net/X2en3/18/
和代码:
使用 .trigger() 触发:使用 .click() 触发:
var working = $('<div><input type="checkbox" id="myBox"/><button id="myButton"/><div>'),
checkbox = working.find('#myBox'),
button = working.find('#myButton'),
stage;
function boxclicked() {$('#' + stage).append('--checkbox');}
function buttonclicked() {$('#' + stage).append('--button');}
working.delegate('#myBox', {click: boxclicked});
working.delegate('#myButton', {click: buttonclicked});
stage = 'trigger';
checkbox.trigger('click');
button.trigger('click');
stage = 'click';
checkbox.click();
button.click();
这只发生在 Chrome 和 JQuery 1.9.1 上。Firefox/IE 9 和以前版本的 JQuery 都可以正常工作。
任何帮助表示赞赏。