如何在不重新加载页面的情况下重新加载Jquery或Javascript函数
是否可以仅重新加载JavaScript或Jquery函数,或者是否可以每隔30秒重新加载外部JavaScript文件,而不是重新加载页面。编辑:我编辑了我的答案,因为显然仍有一些人看到并使用了它。我添加了一个回调,当如何在不重新加载页面的情况下重新加载Jquery或Javascript函数,javascript,jquery,ajax,html,Javascript,Jquery,Ajax,Html,是否可以仅重新加载JavaScript或Jquery函数,或者是否可以每隔30秒重新加载外部JavaScript文件,而不是重新加载页面。编辑:我编辑了我的答案,因为显然仍有一些人看到并使用了它。我添加了一个回调,当getScript工作时,它会在30秒后触发重新加载。您可能想省去这一点,或者添加一个.done()/.fail()回调(看看)。 此外,我还添加了一个随机查询值,以确保加载的脚本不会被缓存: <script id="myscript" src="src/to/file-wit
getScript
工作时,它会在30秒后触发重新加载。您可能想省去这一点,或者添加一个.done()
/.fail()
回调(看看)。
此外,我还添加了一个随机查询值,以确保加载的脚本不会被缓存:
<script id="myscript" src="src/to/file-with-your-custom-scripts.js"></script>
<script>
$(function() {
var salt = Math.floor(Math.random() * 1000),
time;
function load_script() {
$('#myscript').remove();
$.getScript("src/to/file-with-your-custom-scripts.js?s=" + salt, function() {
$('script:last').attr('id', 'myscript');
salt = Math.floor(Math.random() * 1000);
time = setTimeout(function() {
load_script();
}, 30 * 1000);
});
}
load_script();
});
</script>
$(函数(){
var salt=Math.floor(Math.random()*1000),
时间
函数加载_脚本(){
$('#myscript')。删除();
$.getScript(“src/to/file和您的自定义脚本。js?s=“+salt,function()){
$('script:last').attr('id','myscript');
salt=Math.floor(Math.random()*1000);
time=setTimeout(函数(){
加载脚本();
}, 30 * 1000);
});
}
加载脚本();
});
旧版本:
<script id="myscript" src="src/to/file-with-your-custom-scripts.js"></script>
<script>
$(function() {
setInterval(function() {
$('#myscript').remove();
$.getScript("src/to/file-with-your-custom-scripts.js", function() {
$('script:last').attr('id', 'myscript');
});
}, 30000); // every 30 seconds
});
</script>
$(函数(){
setInterval(函数(){
$('#myscript')。删除();
$.getScript(“src/to/file和您的自定义脚本.js”,function()){
$('script:last').attr('id','myscript');
});
},30000);//每30秒
});
另外,为了在不重新加载的情况下加载网页中的实时数据,我们可以在Jquery中使用名为CodeIgniter的PHP MVC。请参阅下面的链接以使其更简单。也可以去官方网站找到更多有趣的东西
你想实现什么目标?为什么函数会改变?我试图每30秒单独重新加载一次脚本。昆汀,一个开发人员可能希望在快速更改代码时这样做,以避免重新加载/重置一个大页面。这就是我寻找它的原因。这只是一个粗略的想法,它没有考虑什么名称空间,必须删除/处理变量等,因为OP没有提供任何信息…此脚本是否每隔30秒一次又一次地启动外部文件的任务,或者只是删除并添加文件。@loyola您无法从浏览器内存中删除脚本,您可以只覆盖它,但仍然需要注意以前绑定的任何数据/事件。所以基本上,无论你想做什么,似乎都是错误的。也就是说,这个问题的答案是asked@Alex这个脚本运行良好。你是个了不起的人。。。继续帮助别人。谢谢。@A.Wolff实际上我正在尝试同步两张图像幻灯片。我试过其他方法,但没能解决。上面的脚本适合我。我知道我做得很疯狂,但我需要一个解决办法。