Javascript 是否使用jQuery检测第一页加载?
我需要在jQuery中检测页面第一次加载的情况,以便只有当用户第一次导航到该页面时,我才能执行一些操作。类似于服务器端代码页。ispostbasck。我已经测试了$(document).ready,它会在每次加载页面时触发,因此这不会提供我需要的内容。我还尝试了jQuery加载函数——它还触发每个页面加载。因此,通过页面加载,一个示例是,我在button类型的页面上有一个HTML输入标记,它不会触发回发(如asp.net按钮),但会重新加载页面并触发$(document).readyJavascript 是否使用jQuery检测第一页加载?,javascript,jquery,pageload,Javascript,Jquery,Pageload,我需要在jQuery中检测页面第一次加载的情况,以便只有当用户第一次导航到该页面时,我才能执行一些操作。类似于服务器端代码页。ispostbasck。我已经测试了$(document).ready,它会在每次加载页面时触发,因此这不会提供我需要的内容。我还尝试了jQuery加载函数——它还触发每个页面加载。因此,通过页面加载,一个示例是,我在button类型的页面上有一个HTML输入标记,它不会触发回发(如asp.net按钮),但会重新加载页面并触发$(document).ready 谢谢,不存
谢谢,不存在只在首次加载页面时触发的事件 您应该使用,然后坚持使用您选择的方法(即cookie、会话变量、本地存储等)处理第一次页面加载的事实
注意:除非您可以在数据库中的用户级别存储此信息,否则此方法永远不会是傻瓜式的。否则,一旦用户清除其cookie或您选择的任何方法,“首次加载”代码将再次触发。您必须使用cookie存储首次加载信息:
if (! $.cookie("cookieName")){
// do your stuff
// set cookie now
$.cookie("cookieName", "firstSet", {"expires" : 7})
}
注意:上面的示例使用。我刚刚遇到了这个问题,这就是我如何处理它的。使用变量
initialLoad
,跟踪页面首次加载的时间:
var initialLoad = true;
$(document).ready(function() {
...
...
...
initialLoad = false;
});
然后在其他函数中,可以执行以下操作:
if (initialLoad) {
//Do work that is done when the page was first refreshed/loaded.
} else {
//Do work when it's not the initial load.
}
这对我很有效。如果用户已经在页面上并且一些jQuery函数正在运行,我现在知道该用户是刚刚加载了页面还是已经在页面上了。简单的解决方案是使用jQuery“Once”插件
$(element).once('class-name', function() {
// your javascript code
});
你得用饼干,伙计,他说的。Jquery(以及一般的javascript)在页面加载之间没有固有的持久性。“我已经测试了$(document)。ready,它会在每次页面加载时启动,所以这不会提供我所需要的。”-显然不是他要求的