javascript - 限制特定对象的 hrefs 的 Javascript 修改/找出修改 hrefs 的内容

标签 javascript jquery html css

我正在使用一个非常古老的应用程序,它通过调用远程服务器上的 JavaScript 并将内容注入(inject) DOM 来填充 div

出于某种原因,在 Firefox 中,它还会用另一个主机地址替换我所有的 URL 主机。

这种行为不会发生在 Chrome 或 IE 中。

虽然我会通过修复应用程序来防止这种情况发生,但我更迫切地需要知道是否可以编写一些 JavaScript 来“保护”文档中的特定元素不被修改。 (即几个对象的href属性)

这可能吗?

更好的是,有什么方法可以让我使用开发人员工具来找出脚本的导致我的链接域发生变化的确切原因吗?

最佳答案

使用 Object.defineProperty() 使属性只读。

 Object.defineProperty(obj, "key", {
    enumerable: false,
    configurable: false,
    writable: false,
    value: "static"
 });

来源:

defineProperty MDN Reference

注意:

defineProperty 在旧浏览器中不被支持,如果你想支持旧浏览器,你必须使用闭包来保护数据不受外部影响。您将为他们提供 getter,以便其他人可以访问您的只读数据。

关于javascript - 限制特定对象的 hrefs 的 Javascript 修改/找出修改 hrefs 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21624108/

相关文章:

javascript - scrollTop() 和 slideDown() 不能正常工作

javascript - 用于比较字符串数组的前 n 个字符的正则表达式

jquery - 即使使用溢出 x :hidden,scrollTop 也无法工作

.net - IE8 CSS Right Float Breaking Parent 到左边

javascript - 将 JSON 信息存储在 HTML 文件中,或者反之亦然

html - 从 ruby​​onrails 中的字符串中提取 header 标签

javascript - 自动完成 json_encode 按列返回

javascript - AngularJS 1.2.19 双向绑定(bind)不起作用

javascript - 为什么这个移动导航开关不能正常工作?

javascript - 如何使用 gulp 从源文件中提取部分并保存为单独的文件?