第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

window.location.href更改時(shí)的事件

window.location.href更改時(shí)的事件

達(dá)令說(shuō) 2019-08-19 14:58:09
window.location.href更改時(shí)的事件我正在為一個(gè)網(wǎng)站編寫Greasemonkey腳本,該腳本在某些時(shí)候會(huì)修改location.href。如何在頁(yè)面上進(jìn)行更改window.addEventListener時(shí)獲得事件(通過(guò)或類似的東西)window.location.href?我還需要訪問(wèn)指向新/修改的URL的文檔的DOM。我已經(jīng)看到了其他涉及超時(shí)和輪詢的解決方案,但我想盡可能避免這種情況。
查看完整描述

3 回答

?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

popstate事件

當(dāng)活動(dòng)歷史記錄條目更改時(shí),將觸發(fā)popstate事件。[...] popstate事件只能通過(guò)執(zhí)行瀏覽器操作來(lái)觸發(fā),例如單擊后退按鈕(或在JavaScript中調(diào)用history.back())

因此,在使用時(shí)收聽(tīng)popstate事件并發(fā)送popstate事件history.pushState()應(yīng)該足以對(duì)href變更采取行動(dòng):

window.addEventListener('popstate', listener);const pushUrl = (href) => {
  history.pushState({}, '', href);
  window.dispatchEvent(new Event('popstate'));};


查看完整回答
反對(duì) 回復(fù) 2019-08-19
?
當(dāng)年話下

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊

您無(wú)法避免輪詢,href更改沒(méi)有任何事件。

如果你不過(guò)分,使用間隔是相當(dāng)輕的。如果你擔(dān)心的話,每50ms左右檢查一次href對(duì)性能沒(méi)有任何重大影響。


查看完整回答
反對(duì) 回復(fù) 2019-08-19
  • 3 回答
  • 0 關(guān)注
  • 3224 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)