2

javascriptでポップアップウィンドウを開いています。いくつかの表示パラメーターを設定しようとしています。具体的には、場所とステータスバーを非表示にしたいのですが、これをテストしたすべてのブラウザーで、場所とステータスバーは引き続き表示されます。

私のコードは次のようになります:

newwindow=window.open(url,'name','height=250,width=290,left=200,top=200,location=no,resizable=yes,scrollbars=yes,toolbar=no,status=no');

何か案は?クライアントは、ホバーツールチップではなく、ポップアップウィンドウを要求しています。

4

5 に答える 5

4

ブラウザは、セキュリティ上の理由から、一部のパラメータのリッスンを停止しています。たとえば、FF3+とIE6/ 7+は、詐欺師が自分ではないサイトになりすますことを防ぐために、ロケーションバーを強制します。

関連:InternetExplorer7のセキュリティステータスバー

Webサイトにアクセスするときは常に、そのサイトの完全なアドレス(URL)を調べて、どのWebサイトを見ているのかを理解する必要があります。IE7は、すべてのウィンドウにアドレスバーの存在を強制することで役立ちますが、完全なアドレスを表示するには、アドレスバーをスクロールするか、ウィンドウを最大化する必要がある場合があります。

より多くの自由が必要で、ユーザーのコンピューターをある程度制御できる場合(たとえば、閉じたイントラネット内)、Webサイトをデスクトップアプリケーションのように見せることができるMozillaPrismのようなソリューションがあります。しかし、これらは通常のWebサイトには適さない高度に専門化されたソリューションです。

于 2010-10-01T16:55:56.653 に答える
3

はい、一部のパラメータは無効になっています。その理由は、他の何かになりすましたウィンドウを開くことができないようにする必要があるためです。

正確なルールは、ブラウザ、ページのスコープ(イントラネット/パブリック)、およびユーザー設定によって異なります。ほとんどのブラウザはアドレスバーを削除しないため、ページがどこから来ているかをいつでも確認できます。

たとえば、InternetExplorerの制限についてここで読むことができます。

いくつかの引用:

「InternetExplorer6for Windows XP SP2では、ウィンドウのタイトルバーとステータスバーが常にディスプレイの表示領域にある必要があります。アドレスバーが表示されている場合は、アドレスバーも表示されたままである必要があります。スクリプトで開いたウィンドウにこれらの制限を設けることにより、ウィンドウ制限セキュリティ機能は、悪意のあるコードが情報を隠したり、ユーザーインターフェイスをスプーフィングしたりするのを防ぎます。ウィンドウ制限機能は、インターネットゾーンではデフォルトでオンになっており、ローカルイントラネットゾーンと信頼済み​​サイトゾーンではデフォルトでオフになっています。」

と:

「ステータスバーは、ユーザーにInternetExplorerのセキュリティゾーン情報を提供するInternetExplorerのセキュリティ機能です。WindowsXPSP2用のInternetExplorer 6より前は、window.openメソッドを呼び出すスクリプトによってステータスバーをユーザーから隠すことができました。ステータスバーが非表示になっていると、ユーザーは、実際に悪意のあるホストとやり取りしているときに、信頼できるサイトにいると思われる可能性があります。

ウィンドウ制限が設定されていると、window.openメソッドによって作成されたウィンドウのステータスバーをオフにすることはできません。すべてのInternetExplorerウィンドウで常に表示されます。ステータスバーに含まれるゾーン情報を偽装したり、表示から隠したりすることはできません。そのため、ユーザーは、コンテンツが表示されているセキュリティゾーンを常に把握できます。」

これはIE6に関するもので、これが導入されたときです。IE 7にはさらにいくつかの変更がありましたが、それは主にナビゲーションがどのように変更されたかに関係しており、openコマンドの一部のパラメーターの動作が異なるか、廃止されています。

于 2010-10-01T17:00:00.667 に答える
1

セキュリティモデルの変更により、完全にクロムレスのポップアップウィンドウを表示することはできなくなり、すべてのクロムを取り除く試みは単に無視されます。JQueryを使用して、ウィンドウのように見えるスキンの疑似ポップアップを作成し、ドラッグハンドラーと閉じるボタンを指定することを検討しましたか?標準のポップアップに優雅に劣化する可能性があります。

http://jqueryui.com/demos/draggable/

于 2010-10-01T17:00:23.900 に答える
0

ほとんどのブラウザはデフォルトでロケーションバーとステータスバーを表示し、オーバーライドも不可能にしますwindow.status。これは安全のために行われます(フィッシングを防ぐため)。

于 2010-10-01T16:56:17.087 に答える
0

ステータスおよび/またはアドレスをJavascriptで非表示または表示に設定できるようにする設定をユーザーが変更する方法に関するより具体的な情報:

[IE セキュリティ] タブの [カスタム レベル] ダイアログから、下にスクロールして次の場所に移動します。

「ウェブサイトがアドレス バーやステータス バーのないウィンドウを開くことを許可する」

これらが無効または有効に設定されているかどうかに応じて、アプリケーションの動作が異なります。

私の知る限り、これは IE7、IE8、および IE9 に適用されます。

于 2011-12-29T19:47:02.143 に答える