none
サイト運営者です。target="_blank"のブロックについて RRS feed

  • 質問

  • WEBサイトを運営しています。

    たとえば動物図鑑などで、動物一覧のページから内部リンクによりダックスフンドなどの詳細ページにジャンプさせるとき、

    target="_blank"で別のウィンドで表示させようとすると、、

    ポップアップブロックされてしまい困っています。

    これによりサイトの利用者離れとページビューの減少を招いています。

    別ウインドウを使わないと複数ある一覧ページへ戻ることが困難となってしまい、WEBページの利便性がかなり低下してしまいます。なんとかこの機能を改善していただくことはできないでしょうか?

    あるいは代替措置があればご教示いただけると助かります。

    よろしくお願いいたします。


    • 編集済み SakushimaMVP, Moderator 2014年3月11日 5:19 タイトルにタイプミスが見られましたので、修正しました。
    2014年3月10日 19:18

回答

  • ポップアップがブロックされる条件はWhat Does the Pop-up Blocker Block?で具体的に説明されています。IE以外の他のブラウザーについても概ね同じです。そしてここにはtarget="_blank"はブロックする条件に挙げられていません。そもそもtarget="_blank"はHTMLの基本機能で動作することはIEのドキュメントにも記述されています。

    つまり、target="_blank"以外の条件に引っかかったためにポップアップがブロックされているものと思われます。使用しているJavaScriptが何か悪さをしていないか確認するといいでしょう。

    • 回答の候補に設定 星 睦美 2014年3月14日 0:41
    • 回答としてマーク 星 睦美 2014年3月26日 0:57
    2014年3月11日 0:32
  • 別ウインドウ、あるいは別タブで開くかは完全にブラウザ側の動作になりますので、それを制御することはできません。また、ポップアップをブロックするものとしては、ブラウザに後からインストールされる何とかツールバーや、セキュリティ関係のソフトなどもあります。このような状況で、ポップアップブロックを回避する対応を行うことは難しいように思います。ちなみに、target="_blank"が指定された場合に、ポップアップで開くか別タブで開くかもブラウザ側の設定になります。

    Webアプリケーションでも1つのページ内で一覧と詳細を表示することは可能です。マスター詳細や、master/detailsで検索してみて下さい。ただ、敷居はそれなりに高いと思います。また、現在、htmlファイルを使い、静的なページのみで構成されている場合はつらいかもしれませんね。いずれにしても現在、どのような形でWebサイトを構築されているかが、今後の方針に影響します。

    一番良いのは、1つの画面で一覧と詳細を切り替えることかもしれません。一覧がたくさんあってスクロールする場合は、ページングをして普通に見る場合はスクロールしないように設計すれば、詳細から一覧に戻ってもさほど混乱がないでしょう。
    このように設計しても、ユーザーは別タブや別ウインドウで開くようにブラウザで操作することが可能ですので、その説明を書いておき、必要な人は別タブや別ウインドウでどんどん開くようにすれば良い気がします。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    • 回答の候補に設定 星 睦美 2014年3月14日 0:42
    • 回答としてマーク 星 睦美 2014年3月26日 0:57
    2014年3月11日 1:20

すべての返信

  • ポップアップがブロックされる条件はWhat Does the Pop-up Blocker Block?で具体的に説明されています。IE以外の他のブラウザーについても概ね同じです。そしてここにはtarget="_blank"はブロックする条件に挙げられていません。そもそもtarget="_blank"はHTMLの基本機能で動作することはIEのドキュメントにも記述されています。

    つまり、target="_blank"以外の条件に引っかかったためにポップアップがブロックされているものと思われます。使用しているJavaScriptが何か悪さをしていないか確認するといいでしょう。

    • 回答の候補に設定 星 睦美 2014年3月14日 0:41
    • 回答としてマーク 星 睦美 2014年3月26日 0:57
    2014年3月11日 0:32
  • 別ウインドウ、あるいは別タブで開くかは完全にブラウザ側の動作になりますので、それを制御することはできません。また、ポップアップをブロックするものとしては、ブラウザに後からインストールされる何とかツールバーや、セキュリティ関係のソフトなどもあります。このような状況で、ポップアップブロックを回避する対応を行うことは難しいように思います。ちなみに、target="_blank"が指定された場合に、ポップアップで開くか別タブで開くかもブラウザ側の設定になります。

    Webアプリケーションでも1つのページ内で一覧と詳細を表示することは可能です。マスター詳細や、master/detailsで検索してみて下さい。ただ、敷居はそれなりに高いと思います。また、現在、htmlファイルを使い、静的なページのみで構成されている場合はつらいかもしれませんね。いずれにしても現在、どのような形でWebサイトを構築されているかが、今後の方針に影響します。

    一番良いのは、1つの画面で一覧と詳細を切り替えることかもしれません。一覧がたくさんあってスクロールする場合は、ページングをして普通に見る場合はスクロールしないように設計すれば、詳細から一覧に戻ってもさほど混乱がないでしょう。
    このように設計しても、ユーザーは別タブや別ウインドウで開くようにブラウザで操作することが可能ですので、その説明を書いておき、必要な人は別タブや別ウインドウでどんどん開くようにすれば良い気がします。


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/

    • 回答の候補に設定 星 睦美 2014年3月14日 0:42
    • 回答としてマーク 星 睦美 2014年3月26日 0:57
    2014年3月11日 1:20
  • 設定を高にすればブロックされますが、デフォルトはたぶん中で普通はブロックされないでしょう。何か勘違いしてるのでは。

    2014年3月11日 9:06
  • > なんとかこの機能を改善していただくことはできないでしょうか?

    このフォーラムは Microsoft のサイトではありますが、Microsoft がユーザーの要望を聞くという場所ではなく、基本的に Microsoft の社員ではない一般の開発者やユーザーがボランティアとして情報交換を行っている場所です。

    なので、ここでそのような要望を出しても何ともなりません。

    > あるいは代替措置があればご教示いただけると助かります。

    それは答えられる人がいるかもしれませんが、その前に、質問者さんのサイト/ページで問題のリンクが具体的にどうなっているか html やスクリプトのソースを示していただかないと、答えは出てこないと思います。

    ブラウザについても、バージョン、オプション設定など詳細な情報を書いてください。

    2014年3月11日 9:27