問題
本意是想要寫一個自用的訂單評價腳本,想要監(jiān)聽 Storage,結果發(fā)現壓根沒有任何返回的內容。
懷疑是京東重寫了 Storage 的監(jiān)聽事件,監(jiān)聽 Message 是沒問題的。
監(jiān)聽 Storage 沒有結果的這個問題有什么辦法解決嗎?
能否自己重寫監(jiān)聽事件,或者寫一個不一樣的監(jiān)聽事件?
PS: 本人已知監(jiān)聽的頁面中進行 localStorage 的修改是不會有效果!
相關環(huán)境說明
執(zhí)行腳本的地址:https://club.jd.com/myJdcomme...
修改 localStorage 是從訂單頁面進行,測試可以從下面兩個地址中進行測試。
0 監(jiān)聽,1 修改
https://club.jd.com/myJdcomme...
https://club.jd.com/myJdcomme...
案例相關代碼
if(/myJdcomment.action/i.test(path)){
var $btn=$('.btn-def'); //評價按鈕
//注冊監(jiān)聽 Storage 事件
console.log('注冊監(jiān)聽 Storage 事件');
window.addEventListener('storage', function(e){
console.log('this: ', e);
});
localStorage['myJDorderVocher']=0;
}
if(/orderVoucher.action/i.test(path)) {
localStorage.setItem('myJDorderVocher','1');
}本來就沒有storage事件
https://html5demos.com/storag...
似乎必須在別的同源頁面窗口修改localStorage才會觸發(fā)storage event
我監(jiān)聽storage并沒有問題
還有就是修改要產生變化才會觸發(fā)storage event,不變的修改不會觸發(fā)
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數據專業(yè)的國家
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產業(yè)為響應國家深化產教融合/校企合作的政策,積極推進“中國制造2025”,實現中華民族偉大復興的升級產業(yè)鏈。利用北京大學優(yōu)質教育資源及背
博為峰,中國職業(yè)人才培訓領域的先行者
曾工作于聯想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。