插入到站点后修改脚本
Modify Script When Inserted into Site
我有代码是从外部站点拉脚本。
var url = "//example.com/script-url.js";
$.ajax({
url: url,
dataType: 'jsonp'
});
它工作得很好,但是,它提取的脚本是由第三方站点生成的。它拉在我需要修改的脚本,当它加载到我的网站。
第三方脚本是这样开始的:
(function() {
document.getElementById("weedmenuPane").innerHTML = //script continues
脚本中的是weedmenuPane
的另一个实例。
我需要修改ID weedmenuPane
为另一个ID。有没有办法做到这一点,当脚本插入到我的网站?
注意:我没有控制第三方脚本被插入到网站。
由于该脚本来自第三方站点,因此它是一个跨源脚本。因此,您不能使用Ajax调用直接检索它,除非它所在的服务器恰好支持CORS。
从客户端,它只能作为JSONP使用,通过插入它作为<script>
标记,将在您有机会修改它之前立即执行它。所以,运气不好。
另一种选择是让客户端从服务器请求脚本。然后,您的服务器可以从其他站点检索它(当您的服务器访问时没有跨域限制)。然后,您的服务器可以在将脚本返回给客户端之前修改脚本。
仅供参考,另一个解决方法似乎也许你可以暂时修改你的网站使用weedmenuPane
id,而脚本运行(这样它就可以在你想要的对象上操作),然后在脚本运行后,你可以恢复id到任何你之前。
相关文章:
- 脚本修改
- 表单验证自动滚动修改脚本
- Chome和Firefox阻止修改派生类'咖啡脚本中的原型
- jQuery脚本将我带到页面顶部.如何修改
- 修改disqus评论脚本的语言
- 修改jQuery脚本,让我选择页面入口的选择列表的默认值
- 修改脚本以检查数据相关
- 请求有关修改 .js 脚本以在 chrome 中包含打开标签页的帮助
- 运行时的 Java 脚本修改函数
- 修改此滚动导航菜单脚本
- 将text.innerHTML修改为显示/隐藏脚本中的图像
- Javascript - 链接伪装脚本需要修改
- 使用脚本中的数据,通过各种形式或提醒框修改 Google 电子表格中的数据
- 创建 Google 脚本,以便在日历活动更新时对其进行修改
- JavaScript - 是否可以修改第三方脚本(外部托管)使用的 setInterval/setTimeout 的行为
- 修改脚本以在上午/下午前后包含 DIV
- 用javascript创建一个var;修改脚本以创建var用法
- 网站编辑不断修改脚本,使其变得毫无用处
- 插入到站点后修改脚本
- 需要JS来修改脚本后面的元素