【问题标题】:Call JQuery function each time the page is shown每次显示页面时调用 JQuery 函数
【发布时间】:2016-11-17 23:55:31
【问题描述】:

我有一个简单的问题。这是我的情况:

每次显示特定页面时,我都会调用此 JQuery 函数:

<script text="text/>JavaScript">
  $(window).on('load', function(){
    $('body').addClass('background-image')
  });
</script>

在我的页面中设置了背景图片。当我加载/刷新页面时它工作正常,但如果我通过链接重定向到此页面,则不会调用 JQuery 函数。比如:我加载首页,图片设置好了;我点击一个链接访问登录页面,然后我再次点击一个链接将我重定向到主页,但图像未设置。

如何在每次显示页面时调用我的 JQuery 函数?

【问题讨论】:

  • but if I redirect to this page by a link, the JQuery function is not called - 这听起来根本不对 - 点击链接“加载”页面
  • 您可以使用 jQuery ready() 函数,如果加载事件绑定不起作用或将事件绑定代码放入 jQuery ready() 函数中
  • 是的@JaromandaX,真的很奇怪。
  • 将事件绑定放在准备好的函数中工作@VikasSachdeva。问题得到了回答,但是,这里确实发生了一些事情,因为现在我遇到了同样的情况,调用了其他函数。而对于这个新案例,即使放入准备好的功能也不起作用。
  • @rwehresmann 好的,我会把这个作为答案。关于您的其他查询,您能否提出一个新问题并在那里进行描述。

标签: javascript jquery redirect


【解决方案1】:

将事件绑定代码放在 jQuery 的 ready() 函数中。它将确保您的事件仅在加载 jQuery 后才被绑定 -

    <script text="text/>JavaScript">
         $(document).ready(function() { 
             $(window).on('load', function(){
                $('body').addClass('background-image')
            });
        });
   </script>

【讨论】:

  • 仅供参考:这个答案解决了我的问题。但是,从根本上说,这并不是 javascript 的一个奇怪问题,而是我在应用程序中使用的 Rails 库的特殊性。更多信息在问题 cmets 中。
猜你喜欢
  • 2017-03-21
  • 1970-01-01
  • 2017-05-15
  • 1970-01-01
  • 2017-01-12
  • 2011-11-27
  • 2016-07-06
  • 1970-01-01
  • 2023-03-27
相关资源
最近更新 更多