gpt4 book ai didi

javascript - 需要重新加载页面才能加载 JavaScript?

转载 作者:行者123 更新时间:2023-12-03 10:42:48 25 4
gpt4 key购买 nike

我有一个带有通知下拉菜单的 Rails 应用程序(类似于 Facebook 或大多数其他社交网站),它使用 javascript 来发布通知。在大多数页面加载上,只有刷新页面后,此功能才会加载。知道为什么会这样吗?

我对 js 不太熟悉,所以这可能是一个简单的修复。

最佳答案

我猜你已经启用了 Turbolinks。要解决此问题,您不仅必须在文档就绪时加载 JavaScript 字段,而且还必须在页面获取时加载 JavaScript 字段。在您的 .js 文件中添加 page:load

的加载程序
# will load .js content on document ready
$(function(){
yourJavascriptFileNameInitialize();
});
# will load content when your route changes using Turbolinks
$(document).on("page:load",function(){
yourJavascriptFileNameInitialize();
});

function yourJavascriptFileNameInitialize(){
# put here your code
}

Turbolinks 默认启用,它使用 ajax 为您加载的页面获取新内容,以减少从服务器加载的内容(使您的应用程序更快)。发生这种情况时,您需要再次加载 .js 文件,因为它们已加载,但尚未记录文档准备就绪。因此,当 page:load 事件发生时,您也必须加载。

关于javascript - 需要重新加载页面才能加载 JavaScript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28698845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com