javascript - dojo.exists 在 IE11 上失败

标签 javascript dojo xpages internet-explorer-11 lotus-domino

几天以来,我在使用 Internet Explorer 11 与由 Domino Server 托管的 dojo toolkit 1.9.4 时遇到了问题。

源代码:

<小时/>
if (dojo.exists("btnUpload")) {
    console.log("btnUpload exist ... do something...");
} else {
    console.log("btnUpload doesn't exist...");
}

在 IE11 中,dojo.exists() 的返回值始终为 false!

IE11 调试器:

<小时/>

enter image description here

但是在所有其他浏览器(Mozilla Firefox、Google Chrome、Apple Safari)中它都可以工作!

最佳答案

使用 dojo.exists 来实现此目的不太合适,因为 btnUpload 从技术上来说只是一个 DOM ID,而不是全局范围内的实际对象。 if (document.getElementById('btnUpload')) 在这种情况下似乎更合适。

当遇到与实际全局变量不匹配但与 DOM ID 匹配的全局引用时,浏览器倾向于返回 DOM 节点,但我不建议依赖它。

关于javascript - dojo.exists 在 IE11 上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30938255/

相关文章:

xpages - 在匿名 XPage 应用程序中使用 applicationScope 的安全性如何?

xpages - 对话框在 xpages 中列出 Lotus Notes

javascript - 试图在屏幕上找到 javascript 元素的位置....在 webkit 浏览器上无法正常工作

javascript - 用于查找和替换的单个正则表达式

javascript - Dojo:TabContainer - 如何在标题中放置菜单按钮?

javascript - 同步 Ajax 请求

javascript - jQuery/Javascript : fire a rightclick on a normal-click?

javascript - 学习Javascript : "this" keyword vs "arguments" object

javascript代码解释

performance - 复杂的 Xpage 需要很长时间才能进行部分刷新