2010-07-28 68 views
1

下面是一個例子頁:http://vincent-massaro.com/modal/modaltest.html延遲窗口上點擊打開使用jQuery

我想有使用jQuery打開一個鏈接被點擊時,一個窗口,但延遲彈出,使之前的第一次顯示一條消息彈出窗口。從示例中可以看出,window.open不是發生在點擊上,而是發生在淡入淡出,所以這會觸發彈出式窗口攔截器,因爲它不會被用戶單擊輸入觸發。是否有可能移動window.open並延遲它,以便當單擊鏈接時,window.open和模態消息同時觸發,但window.open延遲5秒,因此它不會觸發彈出式窗口攔截器?謝謝!

回答

2
setTimeout(function() { 

// window.open call 

}), 5000); 

這不會是一個準確的5秒,這取決於瀏覽器的繁忙程度。但足夠準確。把它放在你的.click fn。

+0

你能修改我的源代碼嗎? Javascript新手在這裏,我不確定你的意思。謝謝。 – Vincent 2010-07-28 19:26:33

+0

我能夠讓您的代碼正常工作,但它仍然觸發Firefox,Chrome和Safari中的彈出窗口攔截器。任何其他想法? http://vincent-massaro.com/modal/modaltest.html# – Vincent 2010-07-29 15:46:57

+2

此代碼應該以如下結尾:「},5000);」 :) – Zuul 2010-08-04 18:40:29

0

還沒有嘗試過,但將window.open放在超時函數中,並將其分別綁定到鏈接。

+0

原來這是不可能的。 – Vincent 2010-08-25 16:11:06