javascript - `$(window).on('load', function() {...}` 不适用于链接跟随或后退点击
问题描述
function preloader() {
console.log('here')
if ($('#preloader').length) {
setTimeout(function() {
$('#preloader').fadeOut('slow', function() {
$('body').removeClass('overflow-hidden').css('padding', '');
});
}, 100);
}
}
$(window).on('load', preloader);
当在浏览器中的新选项卡上打开页面或在页面刷新后打开页面时,此功能有效,但是,在按照常规链接或点击返回按钮后加载页面时,此功能无效。
here
刷新后才显示在控制台中
解决方案
好的,事实证明这是特定于 Ruby on Rails gemturbolink
的,它可以在不重新加载页面的情况下更改正文内容。
它会发出特殊事件,您可以在该事件上跟踪它重新加载的页面:
document.addEventListener("turbolinks:load", function() {
...
})
推荐阅读
- docker - 在 Kitematic (Docker for Mac) 中更改了 SA 密码,我丢失了 localhost 中的所有数据库
- javascript - Javascript:条件函数onClick按钮
- r - 使用 R,我尝试 1)子集 191 个 .txt 文件,然后 2)将生成的较小数据集合并到一个文件中。
- python - 检查两个无序序列是否相等
- jwt - 使用 JWT 身份验证的 laravel 5.7 中不存在身份验证控制器
- html - 创建在鼠标悬停时展开的号召性用语按钮
- powershell - Invoke-WebRequest 未被识别为 cmdlet Windows 7 Powershell 的名称
- regex - 在两组字符之间获取一组目标字符
- c# - C# Selenium - 抛出异常:'OpenQA.Selenium.StaleElementReferenceException'
- r - 无法写入 hdf5 文件:H5Dcreate 中的错误