Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript检查页面是否首次加载_Javascript_Jquery - Fatal编程技术网

如何使用javascript检查页面是否首次加载

如何使用javascript检查页面是否首次加载,javascript,jquery,Javascript,Jquery,我想检查页面是否是第一次加载的,如果是,然后显示过滤器。如果我在pageLoad函数中放入showFiltermenu(),则每次加载页面时都会显示,但我只希望第一次显示它。我尝试使用Page.IsPostBack,但没有显示过滤器 <script type="text/javascript"> function showFiltermenu() { $("#filtermenuDrop").toggle('fold', {}, 500

我想检查页面是否是第一次加载的,如果是,然后显示过滤器。如果我在pageLoad函数中放入showFiltermenu(),则每次加载页面时都会显示,但我只希望第一次显示它。我尝试使用
Page.IsPostBack
,但没有显示过滤器

    <script type="text/javascript">
        function showFiltermenu() {
            $("#filtermenuDrop").toggle('fold', {}, 500);
        }
        function closefiltermenu() {
            $("#filtermenuDrop").toggle('fold', {}, 500);
        }

function pageLoad() {
        $("input[rel^='datepicker']").datepicker({
            dateFormat: 'dd/mm/yy',
            changeMonth: true,
            yearRange: "c-50:c+50",
            changeYear: true,
            showOn: "both",
            firstDay: 1,
            buttonImage: "../images/icons/buttons/basic1-049-small.png"
        });
        <% if (Page.IsPostBack)
           { %>
                showFiltermenu();
        <% } %>

        ShadowboxInit();

    }

函数showFiltermenu(){
$(“#filtermenuDrop”).toggle('fold',{},500);
}
函数closefiltermenu(){
$(“#filtermenuDrop”).toggle('fold',{},500);
}
函数pageLoad(){
$(“输入[rel^='datepicker'])。日期选择器({
日期格式:“日/月/年”,
变化月:对,
年份范围:“c-50:c+50”,
变化年:是的,
showOn:“两者”,
第一天:1,
buttonImage:“../images/icons/buttons/basic1-049-small.png”
});
showFiltermenu();
ShadowboxInit();
}

使用
localStorage
可以像这样保存值:

var firstTime = localStorage.getItem("first_time");
if(!firstTime) {
    // first time loaded!
    localStorage.setItem("first_time","1");
}
没有jQuery,没有插件,只有纯净、漂亮、快速的HTML5API,试试cookie。 饼干对这类东西很有用。 首先,让我们看看浏览器是否知道cookie:

if(document.cookie)
{document.cookie="Name=Value";
}

else{
alert("perhaps you must change browser.Something in this page can't  load.")
}
记住,如果你在控制台上写下,cookie总是返回一个字符串

 document.cookie
设置cookie很简单。你可以设置很多cookie。但是如果你删除cookie,浏览器会显示你第一次访问网站的内容。 要检查是否设置了cookie,可以执行以下操作:

 if(document.cookie.search="value")
 {//code that you want to execute if the page is visited yet}

谢谢大家的回答,但我的问题中只有一个简单的错误。我忘了
。现在可以检查页面是否第一次加载

<% if (!Page.IsPostBack)
           { %>
                showFiltermenu();
        <% } %>

showFiltermenu();

您可以使用cookie。您正在请求cookie。您可以设置cookie或使用localstoragelook查看此链接;)这使得每次加载页面时都会显示过滤器。我只想第一次加载页面。现在可以吗?如果我们使用这个功能,那么会有什么挑战?如果同一个用户使用不同的设备进入,那么这个功能将不起作用。但是,在php中如何做到这一点呢?