[英]Close browser tab
我有一個頁面,告訴用戶轉到他們的電子郵件並單擊驗證鏈接。 當他們這樣做時,電子郵件中的鏈接會打開一個新選項卡,因此現在用戶打開了兩個選項卡,這兩個選項卡都與電子郵件相關,這有點令人困惑。
有沒有機會讓他們點擊他們的電子郵件中的鏈接並在第一個選項卡中打開確認或
打開新選項卡,但同時關閉原始選項卡?
我希望,JS必須有辦法。
您可以定期從第一個選項卡檢查電子郵件是否被激活然后關閉它window.close()
,因此剩下的打開選項卡將是第二個,通常,您將使用setInterval和ajax請求實現類似的服務器后端檢查電子郵件是否已激活。
不,但您可以在第一個選項卡中運行Javascript,每隔10秒左右ping一次服務器,以檢查帳戶是否已確認。
如果是,則頁面將自身重定向到新用戶的儀表板(或其他一些“主帳戶頁面”)。
setInterval(function(){
$.get('/api/is_confirmed.php').then(
function(response){
if (response.status_code == '200')
window.location = '/dashboard.php';
}
);
}, 10000);
我建議反對self.close()
窗口。 不要干擾用戶對瀏覽器選項卡的控制。 突然消失的標簽對於用戶來說是意料之外的,並且最好是令人討厭,最糟糕的是可怕。
你能做的一件事是:
1-不要在該電子郵件中添加指向您頁面的鏈接,而是將鏈接添加到更改數據庫值的特殊頁面,然后自行關閉。
2-在主頁面上,讓一個線程不斷輪詢該數據庫值,並在看到更改后立即使用ajax(或刷新)更新頁面,然后將更明亮的內容置於其他窗口之上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.