有没有办法在chrome和reload页面中更改<script src =“??”> url值?

时间:2018-03-12 18:12:01

标签: javascript html google-chrome google-chrome-devtools

我的html代码中使用了一个js文件,如下所示:

&#xA;&#xA;
 &lt; script src =“// some-website / files / CURRENT_JS_FILE.js“async&gt;&lt; / script&gt;&#xA;  
&#xA;&#xA;

我没有QA环境,也无法更改html代码在生产中

&#xA;&#xA;

我想测试我更新的js代码如下:

&#xA;&#xA;

1)检查html
&#xA; 2)更新源文件URL:

&#xA;&#xA;
 &lt; script src =“// some-website / files / NEW_JS_FILE.js”async&gt; &lt; / script&gt;&#xA;  
&#xA;&#xA;

3)'软'刷新页面进行本地测试(重新加载页面,但使用新的js文件URL)< / p>&#xA;&#xA;

有没有办法做到这一点?我尝试了以下但没有取得好成绩:

&#xA;&#xA;

1)更新src网址,按刷新(按预期刷新整个页面和src网址)

& #xA;&#xA;

2)按CMD + P,打开有问题的JS文件,更新代码,保存;再次刷新,但没有去。

&#xA;

3 个答案:

答案 0 :(得分:2)

我曾经这样做过:

  1. 转到您的网页
  2. 查看源代码
  3. 将其复制并粘贴到新的file.html或本地的任何内容
  4. 如果这显示“正确”页面设计,那么现在您可以以相同的方式复制/粘贴您的js文件,更改file.html中js的导入并制作您的试用

答案 1 :(得分:1)

是。使用Local Overrides

  1. 转到chrome://version。确保您拥有Chrome 65(引入该功能时)。
  2. 打开来源面板。
  3. 打开覆盖标签。

    Local Overides tab

  4. 点击选择要覆盖的文件夹

  5. 选择一个目录,然后单击允许以授予DevTools读取和写入该目录的权限。
  6. 来源面板中修改HTML文件。 元素面板。按 Cmd + S Ctrl + S 保存更改。
  7. 重新加载页面。 DevTools提供您刚修改的文件的本地版本,而不是网络版本。

答案 2 :(得分:-1)

您还可以使用evalXMLHttpRequest。但如果您使用这种方式,则无法使用document.currentScript

<script src="/your-source.js" id="script-characteristic"></script> 
<!-- Set after loading -->
<script>
var scriptElement = document.getElementById("script-characteristic");
if (scriptElement.innerHTML != "") {
    eval(scriptElement.innerHTML);
} else if (scriptElement.src && scriptElement.src != "") {
    var scriptRequest = new XMLHttpRequest()
    scriptRequest.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            eval(this.responseText);
        }
    }
    scriptRequest.open("GET",scriptElement.src,true);
    scriptRequest.send();
}
</script>