2015-07-24 9 views
5

Ich möchte überprüfen, ob die Seite zum ersten Mal geladen wird, und wenn es dann den Filter anzeigt. Wenn ich showFiltermenu() in die pageLoad-Funktion setze, wird es jedes Mal angezeigt, wenn die Seite geladen wird, aber ich möchte nur, dass sie das erste Mal angezeigt wird. Ich versuchte, Page.IsPostBack zu verwenden, aber das zeigt den Filter nicht an.Wie überprüft man, ob die Seite zum ersten Mal mit JavaScript geladen wird

<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(); 

    } 
+0

Sie können Cookies verwenden. – Ibu

+0

Sie fragen nach Cookies. – connexo

+0

Sie können einen Cookie setzen oder localstorage verwenden –

Antwort

1

Vielen Dank allen für die Antworten, aber es war nur ein einfacher Fehler in meiner Frage. Ich habe die ! in der if-Anweisung vergessen. Dies funktioniert jetzt, um zu prüfen, ob die Seite zum ersten Mal geladen wurde.

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

mit localStorage können Sie Werte wie folgt speichern:

var firstTime = localStorage.getItem("first_time"); 
if(!firstTime) { 
    // first time loaded! 
    localStorage.setItem("first_time","1"); 
} 

keine jQuery, kein Plug-in, nur rein, schön und schnell HTML5-API

+0

Sorry, das funktioniert nicht – user123456789

+2

Es funktioniert, wenn Sie Browser-Unterstützung HTML5 –

+0

Funktioniert das jetzt? Was werden die Herausforderungen sein, wenn wir diese Funktionalität nutzen – kiran

1

mit Cookie Versuchen. Der Cookie ist sehr nützlich für diese Art von Sache. Zu allererst mal sehen, ob der Browser wissen Cookie:

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

else{ 
alert("perhaps you must change browser.Something in this page can't load.") 
} 

Denken Sie daran, Cookie Rückkehr immer eine Zeichenfolge, wenn Sie auf der Konsole aufschreiben

document.cookie 

ein Cookie ist simple.You einstellen eine Menge Cookie. Aber wenn Sie die Cookies löschen, die Browser-Dinge, die Sie die Website zum ersten Mal besuchen. Um zu überprüfen, ob ein Cookie gesetzt ist, können Sie dies tun:

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

Dies macht den Filter jedes Mal angezeigt, wenn die Seite geladen wird. Ich möchte nur das erste Mal, wenn die Seite geladen wird. – user123456789

+0

Kannst du mir das auf einer Geige zeigen? Danke –

Verwandte Themen