强制代码在javascript

时间:2016-09-10 08:07:00

标签: javascript

我有一个特定的场景。我有一个立即的功能,在加载的每个页面上执行。

 (function () {
      if (readcookie(login)) { //i need to make it execute only once
           document.head.appendChild(iframe);
      } else {
         //nothing  
      }  
  }());  

是否可以只执行一次if语句,我无法修改登录cookie。此外,我不想使用全局变量或新的cookie。

1 个答案:

答案 0 :(得分:1)

您可以使用sessionStorage来记住您的代码是否已在之前的页面加载中执行:

(function () {
    // Check that your custom storage variable is not set.
    if (!sessionStorage.frameAppended) {
        // If this is the first time the code is executed,
        // create a boolean variable in the storage.
        sessionStorage.frameAppended = true;

        // Add the code that needs to be executed only once below this point.
        if (readcookie(login)) {
            document.head.appendChild(iframe);
        }
    }
}()); 

如果您希望永久存储自定义数据(而不是按浏览器会话),则可以使用localStorage代替。