2016-08-15 33 views
1

我的Web應用程序正在運行在IE 11企業模式中,因爲該應用程序現在在IE 8中兼容(即尚未支持IE 11)。本地存儲事件未在IE 11企業模式下觸發

我正在使用localStorage並嘗試在localStorage中的密鑰更改時執行一些操作(即重定向到註銷頁面)。

請注意,下面的代碼在IE 11(即非企業模式)正常工作IE調試模式(版本號爲8)。只有當瀏覽器處於IE 11企業模式時,我纔有問題。

我已附加聽者如下面提及: -

if (window.addEventListener) {           
    window.addEventListener("storage", handle_storage, false);      
} else {       
    window.attachEvent("onstorage", handle_storage); 
} 

功能採取其他標籤一些動作被點擊的選項卡之一註銷時: -

var handle_storage = function() {     
    //some action i.e. redirecting to logout page 
}; 

單擊註銷按鈕時在localStorage中設置值: -

function saveLogoutInLocalStorage() { 
    if (typeof(Storage) !== "undefined") { 
     localStorage.setItem('is_logout','true');      
    } 
} 
+0

*試試這個「P.S:這不是一個重複的問題,我已經搜索了很多之前我張貼了這個問題。」 *是沒有建設性。人們會找到一個較早的版本,並有助於指向你,否則他們不會。所有這樣的評論都會讓人走開。 –

+1

你知道你的企業模式使用什麼嗎?它可能是IE7或IE8。在IE7 afaik中,這些事件不受支持。即使我不確定企業模式是否支持本地存儲...... – eisbehr

+0

@eisbehr:*如果*它模擬IE8,希望它可以,因爲IE8支持本地存儲(儘管我從未檢查過IE8是否支持'storage'事件;甚至IE10和IE11都有[錯誤事件](http://caniuse.com/#search=stor))。 –

回答

0

這個問題發生在我身上,因爲頁面是以兼容模式加載的。在

<meta http-equiv="X-UA-Compatible" content="IE=8,IE=9,IE=7">