[英]Set hash of blank page opened with window.open()
我有一個頁面是使用javascript的window.open();
動態創建的window.open();
功能。 這將打開一個新的URL為about:blank
窗口,然后將其余代碼注入頁面。 我正在嘗試檢測用戶是否刷新頁面,然后在以后的腳本中告訴啟動器任務已完成(因此,該頁面不是靜態頁面,它需要與另一個打開的選項卡進行通信)
問題是,似乎沒有在URL末尾設置哈希值。 我什至不知道是否有可能這樣做,因為它不是實際的URL。
if (document.location.hash=="#one") {
alert('Good Job!')
} else {
document.onunload=function() {
window.location.href = window.location.href+encodeURIComponent("#one");
}
}
我之所以使用encodeURIComponent()
是因為我聽說某處是非字母數字的良好做法。 我不確定這是否是問題,還是應該使用href=#one
但都沒有用。
有什么辦法嗎?
encodeURIComponent
將URL中具有特殊含義的字符(例如#
)轉換為沒有特殊含義的編碼版本,因此這就是問題所在(因為您需要特殊含義“啟動片段標識符”)。
one
沒有特殊字符,因此不需要編碼。 如果您正在輸入,並且不知道其中是否包含特殊字符,則可以從編碼中排除#。
window.location.href + "#" + encodeURIComponent(some_string_here);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.