javascript - 使用 Firefox 27.0.1 时,Window.settimeout 失败

标签 javascript lotus-notes

我收到此错误:“TypeError:Window.setTimeout 的参数 1 不是对象。”与下面的代码。它在其他浏览器和早期版本的 Firefox 中工作正常。有什么想法吗?

<SCRIPT LANGUAGE=JAVASCRIPT>
window.setTimeout("Advance()", 0, "JAVASCRIPT");
function Advance()
{
location.replace('iWelcome');
}
</SCRIPT>

谢谢 克莱姆

最佳答案

不知道他们为什么进行更改,但现在看来,当您将额外的参数传递给 setTimeout 时,如果您提供了字符串而不是函数,它会抛出错误第一个参数。

这是有道理的,因为他们无法将 "JAVASCRIPT" 传递到 "Advance()",除非他们尝试解析字符串。

<小时/>

要修复此问题,请删除 "JAVASCRIPT" 参数(因为您无论如何都没有使用它):

setTimeout("Advance()", 0);

或者传递一个函数,这在任何情况下都是一个更好的主意。

setTimeout(function(x) {
    Advance(x);
}, 0, "JAVASCRIPT");
<小时/>

或者我想您可以将“JAVASCRIPT”直接编码到调用中(如果您确实正在使用它),并坚持传递一个字符串。

setTimeout("Advance(\"JAVASCRIPT\")", 0);

关于javascript - 使用 Firefox 27.0.1 时,Window.settimeout 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21920223/

相关文章:

javascript - 如何让 Flexslider2 停止跳跃?

javascript - 为什么这个 Javascript 计数器不起作用?

javascript - Spring Rest 和 jQuery Ajax 文件下载

javascript - 莲花笔记 :Web page refresh restriction on attachment upload

javascript - 无法在 Domino Designer 脚本库中创建 javascript 类

javascript - 当部分到达页面顶部时动态添加类

lotus-notes - Lotus Notes 计划代理无法打开不同服务器中的数据库

javascript - 为什么 style.cursor 方法在 xPage 上不起作用?

java - 尝试从 Lotus Notes 文档读取 powerpoint 文件附件时出现 InvocableTargetException

javascript - 将内容更改同步到本地主机 gatsby 版本,无需重新运行 `gatsby-develop`