状態を保存するためにローカル ストレージよりも 1 回だけ実行する必要があるこの JavaScript があります。スクリプトは、ログアウト時にログインを変更します。ページが更新されても、スクリプトを実行したくありません:
var str=document.getElementById("tst").innerHTML;
var n=str.replace("Login","Logout");
document.getElementById("tst").innerHTML=n;
html :
<a href="login" title="log in" class="login_button" id="tst">Login</a></span>
私はこのコードを試しましたが、今ではスクリプトをまったくトリガーしません:
var eventsFired = localStorage.getItem('fired');
if (eventsFired != '1'){
if (document.getElementById('tst')){
var str=document.getElementById("tst").innerHTML;
var n=str.replace("Login","Logout");
document.getElementById("tst").innerHTML=n;
localStorage.setItem('fired', '1');
} }
JS フィドル リンクhttp://jsfiddle.net/9t4Wb/4/
jquery.cookies.js を使用して Cookie を試してみましたが、同じ結果です:
var eventsFired = ($.cookie('eventsFired') != null)
? $.cookie('eventsFired')
: 0;
if (eventsFired == 0){
if (document.getElementById('tst'))
{
var str=document.getElementById("tst").innerHTML;
var n=str.replace("Login","Logout");
document.getElementById("tst").innerHTML=n;
eventsFired++;
$.cookie('eventsFired', eventsFired);
}}
Cookie Jsfiddle テスト http://jsfiddle.net/JqxVj/5/