簡體   English   中英

如何創建一個帶有延遲/超時的 javascript 書簽?

[英]How do I create a javascript bookmarklet with a delay/timeout inside?

我正在嘗試在 Chrome 中制作一個 javascript 書簽來加載網頁,等待 5 秒鍾,然后在該頁面上運行一個名為 close() 的函數來關閉廣告。 我嘗試了以下操作,但無法正常工作:

javascript:(function(){window.location.href="http://www.example.com",setTimeout(function(){close()},5000)})();

似乎 setTimeout 是在運行代碼之前暫停的正確方法,但我猜我似乎無法獲得正確的語法。 我嘗試用另一個頁面重定向替換“close()”,但它從未被調用。 有任何想法嗎? 提前致謝!

您的問題是代碼的上下文將是當前窗口。

分配window.location.href="http://www.example.com" ,新頁面將立即加載新的窗口實例,此后的所有代碼將與先前的窗口實例一起保存

嘗試這個!

javascript:(() => {const sleep = ms => new Promise(y => setTimeout(y,ms));var win = window.open("https://example.com");sleep(5000).then(() => win.close())})();

我是用 ES6 格式制作的 - sleep 功能只是為了讓它更具可讀性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM