หลังจาก 6 ปีฉันมีทางออกสำหรับสิ่งนี้!
คำตอบได้แรงบันดาลใจจากคำตอบอื่น ๆ ที่นี่
คำตอบของ Edub ไม่ได้ผลสำหรับฉันมันโหลดหน้าซ้ำแล้วซ้ำอีกและไม่ได้สังเกตsetInterval
พารามิเตอร์ระยะเวลาของ ฉันไม่เข้าใจว่าทำไมคำตอบของ Edub ไม่ทำงานอย่างที่คาดไว้
สิ่งนี้ใช้ได้กับฉันใน Chrome 67:
javascript:document.getElementsByTagName("body")[0].innerHTML = "<iframe id=\"testFrame\" src=\""+window.location.toString()+"\" style=\"position: absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%;\"><\/iframe>";reloadTimer = setInterval(function(){ document.getElementById("testFrame").src=document.getElementById("testFrame").src },10000)
เวอร์ชันที่จัดรูปแบบ:
document.getElementsByTagName("body")[0].innerHTML =
"<iframe id=\"testFrame\"
src=\"" + window.location.toString() + "\"
style=\"position: absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%;\">
<\/iframe>";
reloadTimer = setInterval(
function(){
document.getElementById("testFrame").src=document.getElementById("testFrame").src
},
10000
)
สิ่งนี้ทำงานโดยการแทนที่เนื้อหาเอกสารปัจจุบันด้วย iframe ที่ชี้ไปยังตำแหน่งปัจจุบันของหน้าต่าง
จากนั้นทำการเรียก setInterval ซึ่งทำให้เพจโหลดซ้ำบนตัวจับเวลา
วิธีนี้ใช้ได้ดีเช่นเดียวกับบุ๊กมาร์ก ฟังก์ชันเสริมของ setInterval สามารถเรียกใช้โดยคั่นหน้าด้วย:javascript:clearTimer(reloadTimer)
หมายเหตุ:
บางไซต์ตรวจพบว่ามีการเข้าถึงผ่าน iframe และพยายามป้องกันการเข้าถึง (เช่นไซต์สแต็ก!)
เบราว์เซอร์จะนำส่วนนำหน้าjavascript:
เมื่อวางลงในแถบที่อยู่ดังนั้นจึงต้องป้อนด้วยตนเอง อย่างไรก็ตามjavascript:
จะไม่ถูกถอดออกหากป้อนผ่านบุ๊กมาร์ก