0

hereから取得した次の簡単なポップアップコードを少し変更して試しました-

<!-- sample.html -->
<script type="text/javascript">
// Popup window code
function newPopup(url) {
    popupWindow = window.open(
        url,'popUpWindow','height=400,width=400,left=10,top=10,resizable=no,scrollbars=no,toolbar=no,menubar=no,location=no,directories=no,status=no')
}
</script>
<a href="JavaScript:newPopup('http://www.facebook.com/zuck');">Open a popup window</a>

これを実行すると、ポップ ウィンドウが期待どおりに表示されます。しかし、スクロールバーと URL は十分に表示されているので、ウィンドウのサイズを簡単に変更できました。resizable=no,scrollbars=no,location=no

これらの属性への変更が結果のポップアップ ウィンドウに反映されないのはなぜですか?

奇妙なことに、これはscrollbar属性が適切に反映される場合と反映されMozilla 10.0.4ない場合がありますGoogle Chrome 19.0.1084.56

ただし、他の 2 つの属性は、どちらのブラウザーでも同じ動作を示します。

4

1 に答える 1

1

ここで重要なことは、これらの設定がブラウザへの提案であることです。ブラウザのベンダーは、ブラウザにそれらを無視させることを選択する場合があります。一部のベンダー (Mozilla を含む) では、特定の設定を無視するかどうかをユーザーが定義できます ( MDN のwindow.openページのさまざまな注意事項を参照してください)。

ここでこの他の回答で説明されているように、結果のドキュメントをスタイリングすることでスクロールバーを回避できます(SOPが機能しない場合)が、ブラウザーが場所を提供し、そうしないように指示しているときにサイズを変更している場合、他に何もありませんポップアップ ウィンドウを使用して実行できます。

代わりに、現在のウィンドウ内で絶対配置要素を使用することを検討してください。これは、ポップアップを行うための最新の方法です。ただし、Facebookをロードする特定の例では、を使用する必要がある場合がありますiframe(エスケープしようとする場合があります)。

于 2012-06-14T13:11:46.233 に答える