Javascript 在不刷新页面的情况下重新加载JS文件

Javascript 在不刷新页面的情况下重新加载JS文件,javascript,page-refresh,partial-page-refresh,Javascript,Page Refresh,Partial Page Refresh,有没有办法,我可以强制我的浏览器只刷新(重新下载)JS资源,而不刷新整个页面?任何web浏览器中的解决方案都可以。当然,独立于浏览器的解决方案是最好的 背景: 我们的应用程序在同一页面上有多个屏幕。在一个屏幕上执行一些操作后,AJAX将获取另一个屏幕。由于页面经常使用JS,我经常需要更改其JS资源。刷新页面以获得固定的JS后,我必须先浏览所有以前的屏幕,然后才能进入当前正在调试的屏幕。您可以使用jQuery进行此操作。在Firefox中,您可以直接将以下内容写入Firebug控制台: $.get

有没有办法,我可以强制我的浏览器只刷新(重新下载)JS资源,而不刷新整个页面?任何web浏览器中的解决方案都可以。当然,独立于浏览器的解决方案是最好的

背景:
我们的应用程序在同一页面上有多个屏幕。在一个屏幕上执行一些操作后,AJAX将获取另一个屏幕。由于页面经常使用JS,我经常需要更改其JS资源。刷新页面以获得固定的JS后,我必须先浏览所有以前的屏幕,然后才能进入当前正在调试的屏幕。

您可以使用jQuery进行此操作。在Firefox中,您可以直接将以下内容写入Firebug控制台:

$.getScript("http://example.com/path/to/your/file.js");
注意:新脚本是在旧脚本的基础上下载的。因此,初始化页面的任何JS代码都会再次执行,这可能会产生副作用。在包含大量JS的页面中,将函数和常量的定义放在不同于page init代码的文件中(如将事件绑定到元素)通常是一个好主意。然后可以使用getScript()仅获取定义文件

如果要将所有内容都保存在一个文件中,可以在加载新文件之前清除旧绑定,方法是:

$("*").off();

我认为如果可以这样做,您需要告诉浏览器“重新运行”文件以更新本地上下文。Ajax请求会自动完成这项工作,但调试起来并不那么容易。工作非常出色。请注意,您提供的url不需要是绝对的。它可以是相对的,例如$.getScript(“file.js”);