0

以下のコードを使用して、Web サイトにスライドショーを作成しました。

intervalID_nextSlide = window.setInterval(function () { nextSlide(); }, 5000);

ユーザーがブラウザ ウィンドウを最小化するか、タブを変更してから再度マイ ページに戻ると、スライド ショーが正しく動作しません (たとえば、不適切な位置で停止したり、非常に速く表示されたりします!)。

だから私は以下のコードで体のぼかしでスライドショーを一時停止したい:

<body onblur='javascript:window.clearInterval(intervalID_nextSlide);'>

ユーザーが私のウェブページに戻ってきたことをどのように検出できますか?

次のように sth する必要があります。

<body onfocus='javascript: startSlideShow();'/>
4

1 に答える 1

0

また、jQuery (スライドショーを作成したり、サードパーティのプラグインを使用している場合は、jQuery を既に含めていると思います) と目立たないイベント ハンドラーを使用することをお勧めします。

window.intervalID_nextSlide = window.setInterval(function () { 
    nextSlide(); 
}, 5000);

$(window).on('blur', function () {
    window.clearInterval(intervalID_nextSlide);
}).on('focus', function () {
    startSlideShow();
});
于 2013-09-10T04:41:47.253 に答える