Javascript 了解用户何时在浏览器中查看您的站点,而不是其他选项卡/应用程序
可能重复:Javascript 了解用户何时在浏览器中查看您的站点,而不是其他选项卡/应用程序,javascript,asp.net,chat,Javascript,Asp.net,Chat,可能重复: 我经常使用的一个网站有在线聊天功能(一个弹出窗口,非常类似于facebook)。当我的浏览器不在该网站的选项卡上时,会发出警报,警告我收到任何新的聊天信息,而当我的浏览器不在该网站的选项卡上时,不会发出声音(根据我的设想) 这是如何实现的?代码(我假设并因此在客户端执行的javascript)如何知道我在/不在查看站点 谢谢一个基于以上其他评论的综合答案。是的,这主要是一个重复的问题,但它被很好地问了,所以如果有人不回答它,它将永远留在未回答的问题库中。对于其他有此问题并找到此答案
我经常使用的一个网站有在线聊天功能(一个弹出窗口,非常类似于facebook)。当我的浏览器不在该网站的选项卡上时,会发出警报,警告我收到任何新的聊天信息,而当我的浏览器不在该网站的选项卡上时,不会发出声音(根据我的设想) 这是如何实现的?代码(我假设并因此在客户端执行的javascript)如何知道我在/不在查看站点
谢谢一个基于以上其他评论的综合答案。是的,这主要是一个重复的问题,但它被很好地问了,所以如果有人不回答它,它将永远留在未回答的问题库中。对于其他有此问题并找到此答案的人,请参考问题评论中的其他链接主题
<BGSOUND id="BGSOUND_ID" LOOP=1 SRC="jsilence.mid">
<script type="text/javascript" language="JavaScript">
function onBlur() {
document.body.className = 'blurred';
};
function onFocus(){
document.body.className = 'focused';
};
if (/*@cc_on!@*/false) { // check for Internet Explorer
document.onfocusin = onFocus;
document.onfocusout = onBlur;
}
else {
window.onfocus = onFocus;
window.onblur = onBlur;
}
function playSound(audioURL)
{
if (document.body.className == 'blurred')
{
if (document.all)
{
document.all['BGSOUND_ID'].src=audioURL;
}
else
{
self.iplayer.location.replace('jsplayer.htm?'+audioURL);
}
setTimeout("stopSound();", 500);
}
}
function stopSound()
{
if (document.all)
{
document.all['BGSOUND_ID'].src='jsilence.mid';
}
else
{
self.iplayer.location.replace('jsplayer.htm?stop');
}
}
function NewMessage(message)
{
ShowMessage(message);
playSound('ding.mid');
}
</script>
函数onBlur(){
document.body.className=‘模糊’;
};
函数onFocus(){
document.body.className='focused';
};
如果(/*@cc_on!@*/false){//检查Internet Explorer
document.onfocusin=onFocus;
document.onfocusout=onBlur;
}
否则{
window.onfocus=onfocus;
window.onblur=onblur;
}
函数playSound(audioURL)
{
如果(document.body.className==‘模糊’)
{
如果(全部文件)
{
document.all['BGSOUND_ID'].src=audioURL;
}
其他的
{
self.iplayer.location.replace('jsplayer.htm?'+audioURL);
}
设置超时(“停止声音();”,500);
}
}
函数stopSound()
{
如果(全部文件)
{
document.all['BGSOUND_ID'].src='jsilence.mid';
}
其他的
{
self.iplayer.location.replace('jsplayer.htm?stop');
}
}
函数NewMessage(message)
{
ShowMessage(消息);
播放声音(‘叮当声’);
}
如果用户使用的是IE&opera的BGSound标签,则此代码将使用这些浏览器中的任何一个来播放声音,否则它将假定页面上有一个名为iplayer的iframe,并使用嵌入的第三方播放器。有关详细信息,请参阅源代码
您可能正在查找:请参阅:“当我的浏览器不在该网站的选项卡上时,会发出警报,警告我收到任何新的聊天信息,而当我的浏览器不在该网站的选项卡上时,不会发出声音(我假定是设计上的)。”您能澄清一下吗?你的陈述本质上是在重复你自己。