我目前正在計算我的應用程序中打開的選項卡數量。但我的問題是,似乎我的腳本不會檢測onload事件。這是我的代碼。 我正在使用HTML5網絡存儲和原生js。我沒有使用jQuery來了解更多關於本地js的知識。無法檢測窗口是否加載
(function(w) {
function Tabz(win, key) {
this.name = '';
this.storageKey = key;
if(win.name != '')
this.name = win.name;
else {
var windowArr = JSON.parse(localStorage.getItem(key)) || [];
this.name = "tabz_"+ windowArr.length;
win.name = this.name;
windowArr.push(this.name);
localStorage.setItem(this.storageKey, JSON.stringify(windowArr));
}
}
Tabz.prototype.getStorage = function() {
return localStorage.getItem(this.storageKey);
}
Tabz.prototype.removeWindow = function() {
//remove window function here
}
var newWindow = new Tabz(w, 'counter');
window.load = function() {
var count = JSON.parse(newWindow.getStorage()).length;
alert(count!); // this wont execute so that I can check the count.
}
})(window);
可能是因爲負載甚至發生在您的函數執行之前。既然這整件事情都是在頁面加載的時候執行的,爲什麼不刪除「window.load = function(){}」,並將警報計數放在主函數中。 – frenchie 2014-10-22 03:05:59