2016-05-25 3 views
0

私はクッキーを作成しています。クッキー - jsファイルのデータが動的に更新されていません

説明: jsファイルを変更してクッキーに保存します。私はB2b industryリンクをクリックすると

は、ページがb2b.jsbanking.jsからJSファイルを置き換える必要があるというように...

上記のシナリオ(JSファイルを置き換えるには)期待通りに働いています。

問題: しかし、スクリプトファイルをロードした後、私は影響を取得されていないb2b.jsファイルから<h1>, <p>タグの内容を交換しようとしています...

任意のヘルプしてください?

PS:同じことはCSSファイルの切り替えのために働いている


init.js

var Cookies = { 
    SetCookie: function (c_name, value, exdays) { 
     var exdate = new Date(); 
     exdate.setDate(exdate.getDate() + exdays); 
     var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString()); 
     document.cookie = c_name + "=" + c_value; 
    }, 

    GetCookie: function (c_name) { 
     var i, x, y, ARRcookies = document.cookie.split(";"); 
     for (i = 0; i < ARRcookies.length; i++) { 
      x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("=")); 
      y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1); 
      x = x.replace(/^\s+|\s+$/g, ""); 
      if (x == c_name) { 
       return unescape(y); 
      } 
     } 
    } 
} 

// file change 
if (Cookies.GetCookie("industryBased") != "") { 
    setIndustryFile(Cookies.GetCookie("industryBased")); 
} 

function setIndustryFile(industryFileName) { 
    document.getElementById("industryScriptFile").src = industryFileName; 
    Cookies.SetCookie("industryBased", industryFileName, 60); 
    return false; 
} 

Index.htmlと

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Test</title> 
    <script src="jquery.min.js"></script> 
    <script id="industryScriptFile" src="banking.js" type="javascript"></script> 
    <script src="init.js"></script> 
    </head> 
    <body> 
    <h1>What is Lorem Ipsum?</h1> 
    <ul> 
     <li><a href="#b2b" onclick="setIndustryFile('b2b.js');return false;")>B2b industry</a></li> 
     <li><a href="#travel" onclick="setIndustryFile('travel.js');return false;")>Travel industry</a></li> 
     <li><a href="#healthcare" onclick="setIndustryFile('healthcare.js');return false;")>Healthcare industry</a></li> 
    </ul> 
    <p>Lorem Ipsum</p> 
    <a href="page2.html">Go to Page 2</a> 
    </body> 
</html> 

b2b.js

jQuery('h1').html('B2B Industry heading...'); 
jQuery('p').html('B2B Industry content...'); 
jQuery('body').css('color', 'red'); 

答えて

1

私はあなたのそれぞれのクッキーのサイズはオーバーサイズなので、ブラウザがそれらを保存していないと思いますhttp://browsercookielimits.squawky.net/

を指します。

各ブラウザには、Cookieストレージの制限サイズが異なります。あなたのクッキーのサイズが大きすぎないことを確認してください。

+0

私のファイルサイズは約120KBです:( – Reddy

+1

代わりにwindow.localStorageを使用することができます。これは、APIがクッキーよりもはるかに使いやすく、メジャーでは10MB以上必要です。 – Alexey

+1

ええ、そうですが、このページで説明されているようにまだ制限があります:http://dev-test.nemikor.com/web-storage/support-test/あなたのデータサイズには十分です。 –

関連する問題