看板 Browsers 關於我們 聯絡資訊
※ [本文轉錄自 Ajax 看板 #1ChHZa01 ] 作者: KC73 (肯先生) 看板: Ajax 標題: [問題] 偵測 Chrome 是否允許彈出式視窗 時間: Thu Oct 7 08:48:34 2010 在寫偵測瀏覽器可不可用彈出視窗的時候,發現一個奇怪的現象,發生在 Chrome 6.0.472.63 上面。 <div id='tt'>test</div> <script type='text/javascript'> setTimeout((function(){window.open("ttt.html");}),2000); </script> 直接點這個連結就是這內容 http://boom.site90.com/tt.html 就是兩秒後會開一個新視窗,不過當然會被封鎖,因為 Chrome 預設不允許彈出式視窗 的。 不過尷尬的是,過了兩秒以後,新視窗雖然沒有彈出來,但是原先的「test」四個字母, 變成「window opened!」。 「window opened!」哪來的?是不被允許的彈出視窗 ttt.html 的內容: <script type='text/javascript'> opener.document.getElementById('tt').innerHTML = 'window opened!'; alert('opened!'); </script> 然後那個 alert 沒有執行,但是它的上一行顯然有執行。 各位的 Chrome 也是這樣的狀況嗎? 在 Firefox、IE、Opera 底下,沒有這樣的狀況。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.128.135
drcula:Chrome的禁止彈出式視窗是假的,只是看不到,實際上有讀進來 10/09 13:00
drcula:上26網站就有發現,明明已經禁止了,也沒視窗彈出,但是背景 10/09 13:00
drcula:音樂就開始放............,其他瀏覽器沒遇到這種情況 10/09 13:01
KC73:嘖!Google 那麼討厭彈出視窗,結果用這種方式處理彈出視窗.. 10/10 03:37
drcula:另外其實你的那行alert('opened!')不是沒有執行,只是跑了 10/10 09:30
drcula:被擋住你看不到就是,所以我才不用Chrome還是用回FF 10/10 09:30
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.166.139.62
evonre:就像擋廣告,GC只有少部分可以在下載前就過濾 10/10 21:04
evonre:最新版ABP or Adthwart 大部分還是先載物件下來再隱藏 10/10 21:06
evonre:GC引擎不改的話,這問題沒辦法修正 10/10 21:06
KC73:這有沒有可能造成 security 的問題?(還沒想到怎麼造成..) 10/11 12:41
KC73:不過 safari 倒是不會這樣... 10/11 12:43
drcula:會啊,426很多網頁會塞垃圾,如果防護不夠強很容易中鏢 10/12 14:18
danny8376:Chrome本身防護就後夠了啊 不過java+flash是個危險... 10/15 17:36
danny8376: 很 10/15 17:37