javascript - 是否可以在页面加载时在本地替换网站的 Javascript?

标签 javascript jquery html web

我不是在谈论使用诸如 greasemonkey 之类的附加组件来注入(inject)新的 javascript。我说的是提供(可能是某种浏览器扩展)要加载的自定义 js 脚本而不是页面提供的脚本。

例子: 页面有<script src="script.js"></script>

我想告诉我的浏览器运行 X 代码而不是 script.js 中的代码

谢谢。抱歉,如果问题不是很清楚。

最佳答案

有几种方法可以在网页上以编程方式执行 Javascript。

添加另一个脚本标签

如果您可以将脚本保存在网络上的某个地方,那么您只需插入一个引用它的新脚本标签即可。

var script = document.createElement('script');
script.setAttribute('src', 'http://yourscript.com/script.js');
document.body.appendChild(script);

或者,如果您可以找到现有的脚本标签,则只需更改源即可。

var script = document.getElementById('my-script');
script.setAttribute('src', 'http://yourscript.com/script.js');

评估代码

如果您已经有了要执行的代码,那么您可以编写一个脚本,使用 Javascript 的 eval 函数来运行它。

var code = '...';
eval(code);

警告!除非您绝对信任代码源,否则使用 eval 可能很危险。

关于javascript - 是否可以在页面加载时在本地替换网站的 Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35285381/

相关文章:

javascript - jquery .is (':disabled' ) 不工作

javascript - 在不使用 Id 的情况下通过 javascript 应用样式

javascript - 用jquery替换html head的内容并更改图标

javascript - 如何让子窗口保持在顶部?

javascript - 翻转具有过渡延迟的 div?

html - 将 div 置于响应式内联 block div 下方

javascript - Jquery 在计时器上切换 div

javascript - 自举 Accordion 无法正常工作

javascript - 是否可以使用 JavaScript 从音频文件中提取幅度数据?

javascript - 鼠标悬停在视频上播放不起作用,直到我先点击网站上的任何地方。我该如何解决?