14

我已经开发了一个移动应用程序(在 asp.net 中),我正在使用带有 WebBrowser 控件的 WinForms 应用程序来演示它。

我的主页我正在使用脚本来隐藏地址栏:

<script type="text/javascript">
    window.addEventListener("load", function () {
        // Set a timeout...
        setTimeout(function () {
            // Hide the address bar!
            window.scrollTo(0, 1);
        }, 0);
    });
</script>

这在几台机器上运行良好,但今天早上在一台新机器上,页面加载时我遇到了一个弹出窗口:

在此处输入图像描述

有问题的机器安装了 IE9,我已经Disable Script Debugging检查了设置。

解决此问题的最佳方法是什么。我可以在 JS 中添加一些条件以在 IE 中运行时不执行吗?

4

3 回答 3

34

我知道这个问题是从 2012 年开始的,但有一个答案。

在添加脚本的文档顶部,<head>您需要编写

<meta http-equiv="X-UA-Compatible" content="IE=edge">

WinForms WebBrowser 控件正在使用 Internet Explorer,但您需要在那里强制使用最新版本。例如。如果您使用的是 jQuery 2+,则它需要 IE 9+,因此您至少需要使用版本 9 或更高版本。

于 2015-01-16T07:52:38.270 回答
2

Webbrowser 控件不支持 jquery v2。

使用 jquery 1.9.1。

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
于 2016-02-02T08:29:56.933 回答
0

Webbrowser 控件是 Internet Explorer 本身的一部分。并且 Internet Explorer 不支持该window.addEventListener方法。改用window.attachEvent方法。

因此,您页面中的脚本将如下所示

window.attachEvent("load", function () {
    // Set a timeout...
    setTimeout(function () {
        // Hide the address bar!
        window.scrollTo(0, 1);
    }, 0);
});

希望这会对你有所帮助!

于 2012-08-31T13:33:54.963 回答