Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 了解用户何时在浏览器中查看您的站点,而不是其他选项卡/应用程序_Javascript_Asp.net_Chat - Fatal编程技术网

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,并使用嵌入的第三方播放器。有关详细信息,请参阅源代码

  • 焦点代码源:
  • 声音播放源:

  • 您可能正在查找:请参阅:“当我的浏览器不在该网站的选项卡上时,会发出警报,警告我收到任何新的聊天信息,而当我的浏览器不在该网站的选项卡上时,不会发出声音(我假定是设计上的)。”您能澄清一下吗?你的陈述本质上是在重复你自己。