Der*_*rek 3 javascript internet-explorer mozilla document
我在新工作中维护许多旧网站和 CMS 系统,其中一个遇到了问题。ASP 站点正在使用 JavaScript,此行今天停止工作(或比今天稍早):
document.forms(0)
Run Code Online (Sandbox Code Playgroud)
控制台会报告Uncaught TypeError: document.forms is not a function。谷歌搜索后,我发现我可以将其替换为:
document.forms[0]
Run Code Online (Sandbox Code Playgroud)
并继续前进,但是,该网站和文件中到处都是这种参考。
谁能解释一下可能发生了什么?Chrome、IE 和 Firefox 无法运行,浏览器或 JavaScript 是否有更新?document.forms(0)我在搜索中似乎找不到。奇怪的。
我将发布到目前为止我的答案,就像评论中提到的那样,这不是所有浏览器的标准,它可以在 IE 中工作,但通常没有其他内容:
document.forms(0) //IE only
Run Code Online (Sandbox Code Playgroud)
这是正确的方法:
document.forms[0] //All browsers (including IE)
Run Code Online (Sandbox Code Playgroud)
我找到了一篇文章(Mozilla 开发者网络),其中引用了圆括号(链接),说document.forms(0)是IE-specific ways to access elements并且document.forms[0]是W3C web standards replacements。
为了确认这一点,我做了一些测试,BrowserStack发现所有版本都IE可以工作,除了Chrome版本 15 和 16(BrowserStack 在其系统上的前两个版本)之外,没有其他版本可以工作。XP)之外,其他版本都不起作用。
使用以下代码,否则您的网站将仅兼容 IE:document.forms[0]
也许我的客户一直使用 IE,只是切换到 Chrome 或其他浏览器。我还没有确认,该网站是否有任何时间的分析。
| 归档时间: |
|
| 查看次数: |
7881 次 |
| 最近记录: |