0

问题

我想使用 javascript 在加载的 DOM 中找出所有出现的例如“stackoverflow”并将其替换为“未知公司”此文本可以是 html 文本、html 属性、javascript 字符串中的值 - 通常所有可以显示的地方给用户。

更多细节

  1. 我无法搜索源代码,因为它的一部分在数据库、资源、外部提供者中。这就是为什么对我来说最简单的方法是验证客户端。
  2. 我有一个 SPA 并且 99% 是由 AJAX 下载的
  3. 我正在使用与标准 ASP.NET MVC 混合的主干(但我认为它不会改变任何东西)
  4. 我无法提供任何代码,因为我不知道如何开始

我的想法

  1. 在 ajax 成功时创建全局处理程序。responseText按内容类型过滤的搜索和替换:html、text、json、javascript
  2. 将整个 DOM 读入字符串并进行搜索和替换,但我不知道上述所有资源是否可行。

我希望我的问题足够清楚,如果不是,我会添加更多细节。

4

1 回答 1

1
$('.myelement').html(function(index, oldHtml) {
    return oldHtml.replace(/stackoverflow/i, 'unknown company');
});

对于任何给定的元素(和子元素),类似的东西应该即时替换文本。您可以自行决定是否可以安全地假设“stackoverflow”没有出现在任何 HTML 属性中,因为它们也可能被替换。

于 2013-06-18T07:12:22.453 回答