1

我正在尝试让我的小工具 html 导航到另一个页面,但是当我尝试通过

window.location = 'http://newurl.com'

它会在默认浏览器的新窗口中打开地址。

到目前为止,我所能做的就是访问iframe小工具 html 中的页面(在flyouthtml 中它不起作用),但是我试图构建的站点有一个框架检测器并且不允许它。

4

1 回答 1

1

您不能将小工具文件的位置更改为远程位置。有办法让它工作,但我不记得它们现在是什么(或者它们是否在 Win 7 中修复)。还有一个安全风险 - 小工具以比网页更高的权限运行,因此它们可以访问剪贴板、跨域 Web 请求,并且可以运行未标记为安全脚本的未签名 ActiveX 控件。

如果你愿意使用 COM,那么你可以使用 windows 自带的WebBrowser 控件,但有一定的限制。您将只能与加载控件的原始域进行通信,如果用户导航离开此域,访问将被同源策略阻止。

<OBJECT ID="WebBrowser1" WIDTH=332 HEIGHT=276
     CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">
    <PARAM NAME="ExtentX" VALUE="8784">
    <PARAM NAME="ExtentY" VALUE="7303">
    <PARAM NAME="ViewMode" VALUE="1">
    <PARAM NAME="Offline" VALUE="0">
    <PARAM NAME="Silent" VALUE="0">
    <PARAM NAME="RegisterAsBrowser" VALUE="0">
    <PARAM NAME="RegisterAsDropTarget" VALUE="0">
    <PARAM NAME="AutoArrange" VALUE="1">
    <PARAM NAME="NoClientEdge" VALUE="1">
    <PARAM NAME="AlignLeft" VALUE="0">
</OBJECT>

如果您不能忍受这些限制,您唯一的选择是创建您自己的引用 WebBrowser 控件并代理命令的 ActiveX 控件。

另请参阅http://support.microsoft.com/kb/176789

于 2010-08-21T16:24:22.100 回答