如何在解决方案中查找并替换IE依赖的javascript的所有实例?

时间:2017-05-17 03:24:39

标签: javascript jquery internet-explorer

所以,我的任务是维护一个遗留应用程序并试图让它跨浏览器。我偶然发现了这样的帖子(Javascript: access DOM elements without getElementById),这些帖子清楚地说明了我的问题。

即,在IE中,您可以通过仅通过其ID来调用DOM中的元素。这是非标准但它的工作原理。显然,第二个你去Chrome或Firefox,旧的代码都不再适用,因为Chrome或FF依赖于你使用像getElementByID这样的东西(这是正确的,基于标准的方式)。

此应用程序还使用document.all之类的东西来查找是否存在某些控件,如果存在,则使用它们。这一切都在没有getElementByID的情况下发生。

那么,是否有一种简单的方法可以找到这种IE依赖代码,这样我就可以将其删除并用更现代的东西替换它?还是不是真的?

谢谢!

编辑:

所以,这是现有JS中的一些代码

for (var i = 0; i < grdPreviousEpisode.rows.length; i++)
... 
}

现在,grdPreviousEpisode是一个GridView(在Web窗体中)。这表现为HTML表。这段代码没有使用“getElementById”函数来“以正确的方式”将其从DOM中拉出来。当没有可见的JS变量时,它依赖于IE的terribad方式将项目传递出DOM。

此代码中可能存在其他区域,这些区域特别依赖于IE依赖的黑客攻击,我不想手动查找/替换这些内容。这有意义吗?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您想要搜索并替换项目文件夹中的所有文件。有几种方法我可以想到

  1. 将项目导入IDE,例如netbeans:Search and Replace Entire Project (Netbeans)
  2. 使用Note ++。按控制键+ f - &gt;在文件中查找。在过滤器
  3. 中输入“* .js”
  4. 如果您在Linux环境中,请使用grep