IE中的javascript网址固定网站任务列表

时间:2012-06-19 15:12:53

标签: javascript internet-explorer pinned-site

我正在尝试为我的项目设置固定网站功能。麻烦的是我想让任务成为javascript动作而不是加载新页面。原因是该网站只能在一个窗口中工作。

我尝试添加以下META标记:

<meta name="msapplication-task" content="name=Test Action;
        action-uri=javascript:ui('test',8);icon-uri=/img/icons/test.ico" />

然而,这导致任务根本不出现。 (使用普通的URL使它显示得很好)

有没有办法做到这一点?我能想到的最好的是哈希并检查hashchange事件,但这不起作用,因为它在窗口的新选项卡中打开...

2 个答案:

答案 0 :(得分:0)

我担心这不受支持,因为动作列表是为启动应用程序而设计的,而非内部导航。

如果您真的想要实现它,您可以打开一个新窗口,通过Web套接字向服务器发送消息,让服务器也通过Web套接字将该消息转发到应用程序窗口。但这是一种非常黑客的方法,仅适用于IE10。

答案 1 :(得分:0)

可以使用哈希解决此问题。通过将action-uri设置为JavaScript可读的内容,JS可以读取它,处理指令,然后清除哈希以准备下一个任务。

这样做的好处是即使窗口尚未打开也能正常工作,因为JS也会在第一次加载时读取哈希值。

要抓住的是将window-type=self添加到内容中。