1

いくつかのポップアップウィンドウを使用していくつかのページを開くネットアプリケーション。このために、私はこのような方法を使用しています

private void OpenWindow(string Url, string height, string Width)
{
    try
    {
        string strScript = "";
        strScript += "<script language=\"javascript\">";
        strScript += "eval(\"popUpWindow('" + Url + "',0,0," + Width + "," + height + ",directories=no)\");";
        strScript += "</script>";
        lblScript.Text = strScript;
    }
    catch (Exception ex)
    {
        LogError.Log(ex);
        throw;
    }
}

JavaScript は次のように機能します。

var popUpWin = 0;

function popUpWindow(URLStr, left, top, width, height, windowName) {
    left = (screen.width / 2) - width / 2;
    top = (screen.height / 2) - height / 2;
    if (popUpWin) {
        if (!popUpWin.closed)
            popUpWin.close();
    }
    popUpWin = open(URLStr, windowName, 'toolbar=no,location=no,directories=no,status=no,menub ar=no,scrollbar=no,resizable=no,copyhistory=yes,width=' + width + ',height=' + height + ',left=' + left + ', top=' + top + ',screenX=' + left + ',screenY=' + top + '');
    popUpWin.focus();
}

アドレスバーを表示しても問題なく動作するようになりました。しかし、私の要件は、すべてのポップアップ ウィンドウでアドレス バーを非表示にする必要があるということです。これは可能ですか?1つの解決策を提供することで助けてください。ありがとうございます。

4

3 に答える 3

2

いいえ、できません。IIRC セキュリティ機能は IE 6 で導入されました。

以前の議論は次のとおりです。

モーダル ダイアログでアドレス バーを非表示にするにはどうすればよいですか?
IE8ポップアップウィンドウでwindows.openを実行するとステータスバーを非表示にできない
、IE8でURLバーを非表示にする方法

于 2010-11-22T08:09:45.300 に答える
1

これは、これを達成しようとしているブラウザによって異なります。

古いブラウザはこれを許可しますが、現在では、ブラウザがアドレスバーを表示し続けることが頻繁にあります. この理由の 1 つは、Web サイトではなく実際のアプリケーション (ウイルス スキャナー?!?) を表示しているとユーザーに思わせにくくするためです。

于 2010-11-22T07:55:12.833 に答える
0

とにかくSystem.Text.StringBuilder、文字列連結の代わりに使用してください。

var sb = new StringBuilder();
sb.Append("<script language=\"javascript\">");
sb.AppendFormat("eval(\"popUpWindow('{0}',0,0,{1},{2},directories=no)\");", url, width, height);
sb.Append("</script>");
lblScript.Text = sb.ToString();
于 2010-11-22T08:06:44.333 に答える