0

私のブラウザFF/Chrome / IE / Safariポップアップブロッカーが許可/有効になっているかどうかをPHPで確認する方法はありますか?

4

3 に答える 3

1

あなたはそのようなことを試すことができます:

<script language="javascript">

var myWindow;

myWindow= window.open(...);
if (myWindow.closed) {
    //pop up disabled
}

</script>

しかし、それはPHPではありません^^

于 2012-07-06T07:54:17.813 に答える
1

ポップアップ ブロッカーはクライアント上でのみ検出できますが、おそらく次のようなことができます。

  • テスト ポップアップを起動し、すぐに JavaScript で閉じます。プロセス中に、ポップアップが成功したかブロックされたかを検出します。

  • それが完了したら、AJAX リクエストをサーバーに送信し、ポップアップ ブロッカーによってブロックされたかどうかをセッション変数に保存します。

ただし、統計目的でデータを収集している場合を除き、クライアントにアクティブなポップアップ ブロッカーがあるかどうかをサーバー側のコードが知る必要がある理由がよくわかりません。

于 2012-07-06T07:55:41.570 に答える
1

PHP はサーバー側の言語であるため、PHP のみを使用することは不可能であると確信しています。他の回答が言ったようにして、このタスクに Javascript を使用します (おそらく AJAX?)。

PHP はブラウザーについて「少し」知っているかもしれませんが、要求ヘッダーにあるものは何でも知っています。これには、ユーザーが使用しているブラウザーを正確に示すユーザー エージェントヘッダーが含まれており、情報を表示する戦略はユーザー エージェントに依存する可能性があります (モバイル ブラウザーからブラウジングするときにモバイル バージョンを表示するために Web ページが行うこととほとんど同じです)。 )。

于 2012-07-06T07:56:43.050 に答える