在onUnload上苦苦挣扎

时间:2012-08-02 10:58:23

标签: javascript onunload

我正在尝试编写一些javascript,询问用户,当他们离开页面时,如果他们想要填写调查(无论这可能是烦人的!)。我认为我的解决方案是通过本网站上的答案找到的。这是我目前的代码,似乎没有起作用:

<script language="javascript">

function comfirmsurv() {

var ConfirmStatus = confirm("We would love to receive your feedback on your experience of this page. Would you like to complete our short survey?");

if (ConfirmStatus == true) {

window.open("#");

}
else 
{window.close();} 
} 
}
window.onUnload=confirmsurv()

</script>
<body>
Test
</body>

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:4)

您正在分配调用函数的结果,而不是函数本身:

window.onunload = confirmsurv; // Note no ()

其他一些问题:

  1. Javascript区分大小写,您所追求的属性是“onunload”,而不是“onUnload”。
  2. 该功能的名称是“comfirmsurv”,但您指定的是“confirmsurv”
  3. window.close():你只能关闭你打开的窗户而不是其他窗户。
  4. 还有一个}
  5. 脚本元素的语言属性已弃用十多年,需要使用type属性,请使用type="text/javascript"

答案 1 :(得分:0)

卸载属性错误地声明为onUnload而不是onunload。此外,代码在这里和那里有太多错误。

浏览器的控制台日志提供了一个日志,您可以使用该日志查找错误原因。

这是固定的脚本。

<SCRIPT>
function confirmsurv() {

  var ConfirmStatus = confirm("We would love to receive your feedback on your experience of this page. Would you like to complete our short survey?");

 if (ConfirmStatus == true) {
   window.open("#");
 } else {
   window.close();
 }

}

window.onunload=confirmsurv;
</SCRIPT>