2016-12-05 7 views
0

Javascriptで以前のタブを検出する方法はありますか?私はタブを変更するたびにそれを検出するChrome拡張機能を作成しています。私が行ったり新しいタブを開くたびに、それは検出されますが、前のタブに戻ると、それは検出されません。Chrome拡張機能の以前のタブまたは非アクティブなタブを検出するにはどうすればよいですか?

+0

もっと詳しい情報を入力してください。あなたはタブの変更を検出するために何を使用していますか? – Artholl

答えて

0

あなたの要求するものではありませんが、あなたが必要とするものの大半を占めていると思います。

クライアントが別のアプリケーション、他のタブ、またはWindowsデスクトップ上のクリックをクリックしたときに、そのウィンドウがいつフォーカス/ブラーされるかを検出します。あなたのウェブサイトのワンクリックがフォーカスとして検出されます。

LoselyこのHow can I detect when the mouse leaves the window?

これに満足

に基づいて?

addEvent(document、 "mouseover"、...)、addEvent(document、 "mouseout"、...)を追加すると、必要なものが得られるかもしれません。

<html> 
<head> 
<script type="text/javascript"> 
    // just a function to display a message 
    function displayMessage(msg) { 
    document.getElementById('message').innerHTML = msg; 
    } 
    function addEvent(obj, evt, fn) { 
    if (obj.addEventListener) { 
     obj.addEventListener(evt, fn, false); 
    } 
    else if (obj.attachEvent) { 
     obj.attachEvent("on" + evt, fn); 
    } 
    } 
    addEvent(window,"load",function(e) { 
    // activate window 
    addEvent(window, "focus", function(e) { 
     e = e ? e : window.event; 
     var from = e.relatedTarget || e.toElement; 
     if (!from || from.nodeName == "HTML") { 
     // stop your drag event here 
     displayMessage('focus'); 
     } 
    }); 
    // blur window 
    addEvent(window, "blur", function(e) { 
     e = e ? e : window.event; 
     var from = e.relatedTarget || e.toElement; 
     if (!from || from.nodeName == "HTML") { 
     // stop your drag event here 
     displayMessage('blur'); 
     } 
    }); 
    }); 
</script> 
</head> 
<body> 
    <div id="message"></div> 
</body> 
</html> 
関連する問題