1

window.Open 関数を使用して JavaScript で新しいウィンドウを起動し、そのタブにフォーカスを設定することは可能ですか?

今日私がやっていることは次のとおりです。

            var winRef = window.open(outUrl,wName,'left='+ wX +',top=' + wY + ',height=' + wH + ',width=' + wW + args);
            try {
                // Not all window types support the focus() property.
                winRef.focus();
            }
            catch (exception) {
            }

ウィンドウは開きますが、新しいタブにはフォーカスがありません。

4

5 に答える 5

4

ジェイ、

設計された動作が見られます。悪意のある動作の機会を制限するために、タブ付きウィンドウで実行されているスクリプトは他のタブに影響を与えることができません。

詳細については、 http : //msdn.microsoft.com/en-us/library/ms537636.aspxで開発者向けのタブ ブラウズを参照してください。

「同じブラウザー ウィンドウ内で複数のドキュメントを開く機能には、実用面とセキュリティ面で一定の影響があります [...] アクティブなタブ (フォーカスのあるタブ) は、非アクティブなタブまたはバックグラウンドのタブで実行されるスクリプトの影響を受けません。」

BR。

于 2008-09-16T14:35:19.480 に答える
1

ユーザーとして、特に要求しない限り、アプリケーション (またはタブ) にフォーカスを移したくありません。このため、ブラウザー (Firefox) のタブがフォーカスされないように、あらゆる努力をしました。

于 2008-09-16T14:33:28.940 に答える
1

他の「タブ」がアプリケーションの一部である (別のサイトのコンテンツではない) 場合は、別のウィンドウではなく、メイン コンテンツの上にあるポップアップ div に含める必要があります。そうすれば、フォーカス、その下のコンテンツの非アクティブ化 (モーダル ダイアログの場合)、非表示などをいつでも制御できます。

于 2008-09-16T22:50:09.417 に答える
1

ユーザーとして、これがどのように動作するかを制御できるべきではありませんか?

この機能によって拡張されるアプリケーションを実行したい場合はどうすればよいでしょうか? ドメインにその権限を付与することはできませんか?

ちょっとした考え。

于 2009-02-13T18:06:23.413 に答える
1

フォーカスを別のタブに移動できないことは間違いありません。

私の理解では、これは、ポップアップやその他の悪意のあるコンテンツがユーザーのフォーカスを盗むのをある程度制限するために行われます.

于 2008-09-16T14:35:59.947 に答える