Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript beforeunload事件的问题_Javascript_Jquery_Firefox - Fatal编程技术网

Javascript beforeunload事件的问题

Javascript beforeunload事件的问题,javascript,jquery,firefox,Javascript,Jquery,Firefox,我有一个卸载前功能: jQuery(window).bind('beforeunload', function() { if(inFormOrLink){ return inFormOrLink ? "Do you really want to close?" : null; }}); 该功能在Chrome中运行良好,但在Firefox中不起作用。对于Firefox,我使用以下功能: if(inFormOrLink){ var myEvent = window.attachEv

我有一个卸载前
功能:

jQuery(window).bind('beforeunload', function() {
if(inFormOrLink){
    return inFormOrLink ? "Do you really want to close?" : null;
}});
该功能在Chrome中运行良好,但在Firefox中不起作用。对于Firefox,我使用以下功能:

if(inFormOrLink){
    var myEvent = window.attachEvent || window.addEventListener;
    var chkevent = window.attachEvent ? 'onbeforeunload' : 'beforeunload';
    myEvent(chkevent, function(e) {    
        var confirmationMessage = 'Are you sure to leave the page?';  // a space
        (e || window.event).returnValue = confirmationMessage;
        return confirmationMessage;
    });
}

这个很好用。当我得到inFormLink false的值时,我的问题类似于上面的函数。我不明白“当我得到inFormLink false的值时,我的问题类似于上面的函数”是什么意思。当值为false时会发生什么?如果您在Firefox或Chrome或两者中遇到问题?在上面的函数中,当我不想调用popup时,我使用inFormOrLink=false,但在下面的例子中,我使用了相同的方法,但是popup appear如果
inFormOrLink
true
,则您所说的不会发生。这段代码可能运行多次吗?因为如果它在
inFormOrLink
打开的情况下运行一次,那么事件将保持绑定状态,直到您尝试离开页面…明白了,但是如果它调用了很多,那么为什么我上面的代码在chrome中运行良好,但对于mozila,我在相同的场景中使用下面的代码,但它不工作我不明白是什么“我的问题是,当我得到inFormLink false的值时,上述函数会起作用“意思是。当值为false时会发生什么?如果您在Firefox或Chrome或两者中遇到问题?在上面的函数中,当我不想调用popup时,我使用inFormOrLink=false,但在下面的例子中,我使用了相同的方法,但是popup appear如果
inFormOrLink
true
,则您所说的不会发生。这段代码可能运行多次吗?因为如果它在
inFormOrLink
打开的情况下运行一次,那么事件将保持绑定状态,直到您尝试离开页面…明白了,但是如果它调用了很多,那么为什么我上面的代码在chrome中工作得很好,但对于mozila,我在相同的场景中使用下面的代码,但它不工作