在IE中本地运行JS应用程序

时间:2011-02-12 13:22:06

标签: javascript internet-explorer gwt

我正在使用GWT 2.1和IE来测试默认的hello world GWT应用程序。

我编译默认的Hello world GWT应用程序,然后转到HTML文件和 用IE打开它。 我收到一条红色警告消息“您的网络浏览器必须包含JavaScript 已启用,以便正确显示此应用程序。“ 我必须允许活动内容运行才能看到 应用屏幕。 如果我通过\ .psf \ Home运行应用程序,情况会有所不同 \ myFile.htm是我的Parallel的“共享目录”的路径..我 不会看到这样的警告。 也在dev模式下运行似乎不会引发此警告消息。

它看起来IE不喜欢人们从本地驱动器打开JS-laced网页。我想,可能是一个安全问题。

有一篇详细的文章在http://www.phdcc.com/xpsp2.htm

解决了这个问题

我通过添加这两行来尝试网络标记的方法 开始myfile.html文件:

<!-- saved from url=(0014)about:internet --> 
<!-- saved from url=(0016)http://localhost --> 

但是当我添加这两行然后编译应用程序并用IE打开html文件时,即使警告消息消失,也不会显示Web应用程序!

原因可能是(默认情况下)GWT应用程序在iframe中加载,即作为另一个不包含MotW的HTML页面(* .cache.html)。

我尝试使用“xs”或“xsiframe”链接器,即将这些行中的一行添加到我们的 * .gwt.xml:

<add-linker name="xs" /> 
<add-linker name="xsiframe" /> 

那些链接器使用* .cache.js“文件,因此我们主机页面中的MotW应该足够了。但是”xs“链接器阻止我们使用DevMode。 将行添加到xml模块文件使IE警告消息消失,并可以在IE本地运行应用程序。但是上面的行阻止我们的应用程序在IE中以开发模式运行。

任何想法我们如何才能让该应用程序在开发模式和Web模式下工作?

我不喜欢有两个xml模块文件,一个用于开发模式,另一个用于开发模式 对于网络模式。但是如果必须的话我想知道如何做到这一点?

也对使用IE在本地运行javascript应用程序的任何其他方法感兴趣。

谢谢

3 个答案:

答案 0 :(得分:1)

您是否尝试过在Internet选项的高级选项卡中启用本地文件中的活动内容?

答案 1 :(得分:1)

这对我有用:

SO - Activex content in local web page

带走的是:

<!-- saved from url=(0014)about:internet -->

必须是文件中的第一行,文件必须

\r\n (CRLF)

行结尾。

答案 2 :(得分:0)

您可以下载并设置xampp并将您的文件放在htdocs文件夹中。这将为您提供环回地址的本地服务器。这将阻止IE完成有关本地运行的js文件的所有杂技,因为它会认为它正在访问远程网站。