我在jQuery中遇到了一个奇怪的点击处理程序问题。我写了一个用户脚本,它在Firefox中运行良好。 (Greasemonkey插件) 起初我认为它在chrome中运行良好(因为脚本加载正常,我在控制台中没有出现任何错误),但事实证明我的按钮都没有工作。我正在使用Tampermonkey插件来制作镀铬。
以下是我用于处理程序的代码:
$(function(){
function count_send_at(event) {
//...
return false;
}
$('#count_send_at_btn').click(count_send_at);
});
count_send_at()
根本没有被调用(通过警报测试)。
我在互联网上找不到任何解决方案,也许你可以帮助我。
答案 0 :(得分:1)
$(document).ready(function () {
function count_send_at(event) {
//...
return false;
}
$('#count_send_at_btn').click(count_send_at);
});
答案 1 :(得分:-1)
我尝试了类似的东西并且得到了相同的行为;它抱怨'$'未定义,这意味着用户脚本无法访问jQuery对象。
这是解决问题的方法:
function GM_wait() {
// if chrome, of course. this might need to be handled differently in firefox...
if(typeof unsafeWindow.jQuery == 'undefined') {
window.setTimeout(GM_wait,100);
} else {
$ = unsafeWindow.jQuery;
}
}
(function(){
GM_wait();
if ( $ ) {
alert('got it!');
}
})();