所以我想做的是:如果我的 ajax 请求返回一些东西,我想播放声音。如果用户在 15 秒内到达选项卡,那么什么都不会发生。但如果他花费超过 15 秒,就会触发警报。我似乎无法让这种行为起作用....
$.getJSON('/orders/'+restaurant+'/.json', function(data) {
$.each(data, function(key, val) {
//does some processing on the data
});
if (data.length > 0){
$('#play_sound').html('<iframe width="1" height="1" src="http://www.youtube.com/embed/3puTnBV8DbQ?autoplay=1" frameborder="0" ></iframe>');
setTimeout
(
function()
{
var isActive;
window.focus = function (){
isActive = true;
}
window.onblur = function() {
isActive = false;
};
if ((!isActive)){
alert('ajax request returned info');
}
}
, 15000
);
}
现在我有点知道我可能需要一个额外的变量,就像一个计数器......我不知道......
建议?