Javascript/jQuery onbeforeunload HTML事件故障
我有一段代码没有实现我想要的:Javascript/jQuery onbeforeunload HTML事件故障,javascript,jquery,events,triggers,dojo,Javascript,Jquery,Events,Triggers,Dojo,我有一段代码没有实现我想要的: $('body').attr("onbeforeunload", "return dojoclick()"); function dojoclick(){ dojo.byId('jstop').click(); } “单击”功能不起作用,但如果我将“单击”替换为“删除”,它会起作用。。。例如: $('body').attr("onbeforeunload", "return dojoclick()"); function dojoclick(){
$('body').attr("onbeforeunload", "return dojoclick()");
function dojoclick(){
dojo.byId('jstop').click();
}
“单击”功能不起作用,但如果我将“单击”替换为“删除”,它会起作用。。。例如:
$('body').attr("onbeforeunload", "return dojoclick()");
function dojoclick(){
dojo.byId('jstop').remove(); //Element is removed properly
}
“Click”函数之所以有效,是因为如果我通过控制台调用“dojoclick()”,它会触发:
单击按钮后,将打开一个记事本(它调用一个Java例程,该例程将打开notepad.exe)
为什么函数dojoclick()
$(window).on('beforeunload', function(){
dojoclick();
});
而不是将其附加为HTML属性
或者您可以直接使用
$(window).on('beforeunload', function(){
dojo.byId('jstop').click();
});
不幸的是,我帮不了你更多的忙,我真的不知道dojo是如何工作的我找到了一个解决方案,也许它很糟糕,因为它的功能:
dojo.addOnUnload(function(){
dojo.byId('jstop').click();
});
它随机工作(?)我的意思是,我关闭窗口10次,它触发6次。我讨厌这个。什么?浏览器打开记事本?id为“jstop”的按钮有一个关联事件,该事件调用打开记事本的Java例程。我只想在窗口关闭时触发该事件。如果我知道怎么做,我会直接调用事件内部的函数(Dojo是这样做的,我对Dojo一无所知)。因此,最简单(理论上)的方法是模拟一次单击,以便事件调用函数。记事本只是一个测试。它表示Java例程已经执行。谢谢你,伙计。我只对记事本的执行感到好奇。我不确定我是否是回答这个问题的合适人选。我想问题是(可能)耽误时间。单击后添加返回“某物”,然后再次检查?