0

私は自分のサイトでこの jQuery Modal Window スクリプトを使用しています: http://www.zurb.com/playground/reveal-modal-plugin

現在、ユーザーがリンクをクリックすると、モーダル ウィンドウがアクティブになります。ただし、ページが初めて読み込まれたときに自動的に実行されるように変更したいと考えています。ただし、その後同じユーザーが同じページにアクセスしても、スクリプトが再びアクティブになることはありません。おそらく、ページの読み込み時に自分で実行する方法を理解できたでしょう。しかし、一度だけ発火させて、二度と発火させないというのは、私にはよくわからないことです。

どんな助けでも大歓迎です。

4

1 に答える 1

3

そのクライアントのブラウザーで永続的なものが必要になるか、これがユーザーがプロファイルを持つ Web アプリケーションである場合は、サーバー側で状態を追跡する必要があります。

すべてクライアント側で行っている場合は、Cookie を使用する可能性があります。サーバー側から、または JavaScript で Cookie を設定できます。

以下は、set cookie/get cookie 関数の一部です。

function setCookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}

function getCookie(cookieName) {
 var theCookie=" "+document.cookie;
 var ind=theCookie.indexOf(" "+cookieName+"=");
 if (ind==-1) ind=theCookie.indexOf(";"+cookieName+"=");
 if (ind==-1 || cookieName=="") return "";
 var ind1=theCookie.indexOf(";",ind+1);
 if (ind1==-1) ind1=theCookie.length; 
 return unescape(theCookie.substring(ind+cookieName.length+2,ind1));
}

したがって、次のように結び付けます。

$(function() {

     var skipModal = getCookie('skipModal');
     if (!skipModal) { // check and see if a cookie exists indicating we should skip the modal
         // show your modal here


         setCookie('skipModal', 'true', 365*5); // set a cookie indicating we should skip the modal
     }
});
于 2012-05-16T11:35:04.910 に答える