Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在不重新加载页面的情况下重新加载Jquery或Javascript函数_Javascript_Jquery_Ajax_Html - Fatal编程技术网

如何在不重新加载页面的情况下重新加载Jquery或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

是否可以仅重新加载JavaScript或Jquery函数,或者是否可以每隔30秒重新加载外部JavaScript文件,而不是重新加载页面。

编辑:我编辑了我的答案,因为显然仍有一些人看到并使用了它。我添加了一个回调,当
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实际上我正在尝试同步两张图像幻灯片。我试过其他方法,但没能解决。上面的脚本适合我。我知道我做得很疯狂,但我需要一个解决办法。