如何重载Jquery或Javascript函数而不重载页面

How to reload Jquery or Javascript function without reloading the page

本文关键字:重载 函数 Javascript Jquery 何重载      更新时间:2023-09-26

是否可以只重新加载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>

旧版本

:

<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>

为了不重新加载网页中的实时数据,我们可以使用PHP MVC CodeIgniter和Jquery。请参阅下面的链接,使它更容易。也去官方网站,找到更多有趣的东西。

http://chrissilich.com/blog/make-your-own-live-data-feed-with-php-codeigniter-and-javascript-jquery/