Nov 17, 2006
Firefox2のポップアップブロックについて調べてみた
なんかFirefox2ではポップアップブロックの挙動が変わってるというらしく、ポップアップを許可したサイトでもブロックされるというのでコメントをしたんだけど認識が違っていたようなので、気になってソースを読んで調べてみたりしたので、わかったことをメモしておく。
- 許可サイトでなくても、完全に許可されるポップアップがある
-- ボタンやイベント設定された要素の左クリック
-- Enterキーか、スペースキーでボタンが押された場合(onclickが呼び出される操作)
-- ユーザーの設定に関わらず許可される、30個だろうと開く
--- これを防ぐのが「browser.tabs.maxOpenBeforeWarn」?
- 許可サイトでなくても、個数限定付きで許可されるポップアップがある
-- フォームの値変更なんかで開くポップアップ。
-- dom.popup_allowed_eventsに指定されているイベントタイプかどうかで判別。
-- デフォルトでchange click dblclick mouseup reset submitが登録されている。
-- デフォルトで20個まで許可される。(dom.popup_maximumの数値)
- 上記パターン以外のポップアップはブロックされる
-- 自動で表示されるポップアップなど、基本的に全部。
-- そのサイトを許可リストに入れている場合、20個まで許可される。(dom.popup_maximumの数値)
サイトまたはドメインでポップアップを許可していても、「dom.popup_maximum」の数値に引っかかってしまうようだ。逆に、許可した覚えのないサイトでも、ボタンのクリックであれば無制限にポップアップが開くし、許可パターンに一致していれば20個まではポップアップが開く。
- ユーザーが許可していてもブロックされることがあるというのは明らかに不自然。
で、livedoor Readerでブロックされるという件だけど、キー操作でウィンドウを開くってのはユーザーが起こしたイベントに紐付いたwindow.openではあるのだけれど、タイマーを使って順次開いたりしているので、ブラウザ側で判別するのは難しいだろうと思う。なんにせよサイトで許可していても開かないことがある、っていうのは、説明しづらくて非常に困る感じがする。(今のところabout:configやら拡張やらでdom.popup_maximumを増やすしか無いようだ。)
Firefoxのポップアップブロックの挙動
- 許可サイトでなくても、完全に許可されるポップアップがある
-- ボタンやイベント設定された要素の左クリック
-- Enterキーか、スペースキーでボタンが押された場合(onclickが呼び出される操作)
-- ユーザーの設定に関わらず許可される、30個だろうと開く
--- これを防ぐのが「browser.tabs.maxOpenBeforeWarn」?
- 許可サイトでなくても、個数限定付きで許可されるポップアップがある
-- フォームの値変更なんかで開くポップアップ。
-- dom.popup_allowed_eventsに指定されているイベントタイプかどうかで判別。
-- デフォルトでchange click dblclick mouseup reset submitが登録されている。
-- デフォルトで20個まで許可される。(dom.popup_maximumの数値)
- 上記パターン以外のポップアップはブロックされる
-- 自動で表示されるポップアップなど、基本的に全部。
-- そのサイトを許可リストに入れている場合、20個まで許可される。(dom.popup_maximumの数値)
サイトまたはドメインでポップアップを許可していても、「dom.popup_maximum」の数値に引っかかってしまうようだ。逆に、許可した覚えのないサイトでも、ボタンのクリックであれば無制限にポップアップが開くし、許可パターンに一致していれば20個まではポップアップが開く。
感想
- せっかく情報バーというわかりやすいUIがあるのに何でこんなややこしいことをしているのか理解できない。- ユーザーが許可していてもブロックされることがあるというのは明らかに不自然。
で、livedoor Readerでブロックされるという件だけど、キー操作でウィンドウを開くってのはユーザーが起こしたイベントに紐付いたwindow.openではあるのだけれど、タイマーを使って順次開いたりしているので、ブラウザ側で判別するのは難しいだろうと思う。なんにせよサイトで許可していても開かないことがある、っていうのは、説明しづらくて非常に困る感じがする。(今のところabout:configやら拡張やらでdom.popup_maximumを増やすしか無いようだ。)
WriteBacks
FireFox2のポップアップブロック。
最速インターフェース研究会 :: Firefox2のポップアップブロックについて...
Posted by +++ e d o m i - r u u . at 2006/11/23 (Thu) 15:37:02
[その他] Firefox 2.0 その後
先日の再インストールから,まだ一度もフリーズしていない. フィッシング警告はオフ.ただ,about:config で dom.popup_maximum の値を大きくしないとlivedoorReaderがうまく動かない. 参考: 最速インターフェース研究会 :: Firefox2のポップアップブロックについて調べて
Posted by さぼりがち日記 at 2006/11/29 (Wed) 18:32:43
http://la.ma.la/blog/diary_200611171115.trackback
writeback message: Ready to post a comment.

