在浏览器最小化时引起用户的注意(跨浏览器桌面通知?)

时间:2011-10-21 21:38:03

标签: javascript html css user-experience

我正在开发一个基于浏览器的应用程序,当用户收到传入的事件(例如消息)时,即使用户已将浏览器最小化,也需要能够引起用户的注意。

搜索给了我一些好的结果,但没有跨浏览器或firefox特定的。我需要能够支持IE 7+和FF 3.6+(特定于用户群)。

以下是我看过的内容:

到目前为止,我们使用简单的javascript警报将托盘图标设置为闪存,但在尝试响应通知时创建了额外的点击(现在总共有3次点击,或者33%的降级)。用户每天要做20到50次,所以很快就会非常讨厌。

基于Microsoft开发人员网络上提供的示例,我制作了这个适用于IE的简单原型,但它是IE特定的,不适用于其他浏览器:

<HTML>
<HEAD>
<TITLE>Popup Example</TITLE>
<SCRIPT LANGUAGE="JScript">
function timeMsg()
{
    var t=setTimeout("ButtonClick()",5000);
}

var oPopup = window.createPopup();

function ButtonClick()
{
    var oPopBody = oPopup.document.body;
    var myHeight = (window.screen.availHeight - 125);
    var myWidth = (window.screen.availWidth - 350);

    oPopBody.style.backgroundColor = "red";
    oPopBody.style.border = "solid black 1px";
    oPopBody.innerHTML = "Click outside <B>popup</B> to close.";
    oPopup.show(myWidth, myHeight, 300, 75);
}
</SCRIPT>
</HEAD>
<BODY>
<BUTTON onclick="timeMsg()">Display alert in 5 seconds</BUTTON>
</BODY>
</HTML>

非常感谢任何有关如何在不使用本地安装的可执行文件的情况下改善体验的建议!

3 个答案:

答案 0 :(得分:0)

我们最终只使用了Google Chrome桌面通知,并要求我们的客户在IE中使用Chrome或Chrome Frame。通过播放声音作为警报来增强通知。

以下是关于它的文档:http://code.google.com/chrome/extensions/notifications.html

答案 1 :(得分:0)

尽可能多:这里有一些新东西可以解决〜&gt;中的问题。 IE9

使用window.extern.msSiteModeSetIconOverlay api电话。

这是一个参考

http://www.codeproject.com/Articles/117115/Using-Overlay-Icon-API-to-Make-Client-Notification

答案 2 :(得分:-1)

如果您可以指示用户将关闭弹出窗口拦截器,则请设置“设置”页面。

该页面提供了有关如何为您的网站及其/所有浏览器关闭弹出窗口拦截器的说明。优选地,图像显示要做什么。大多数浏览器都会通过将网站添加到“白名单”的方式发出弹出窗口被禁止的通知。

然后在点击按钮或执行其他操作时在该页面上启动弹出窗口。然后他们可以按照说明操作并关闭弹出窗口抑制功能。