加载页面时,不会激活焦点/模糊状态。当切换到例如另一个选项卡blur
时,并在切换回页面focus
时激活 - 但在第一次加载页面时,没有任何状态被激活,为什么?这是预期的行为,还是我弄乱了什么?
$(function(){
$(window).focus(function() {
document.title="focus";
});
$(window).blur(function() {
document.title="blur";
});
});
更新
由于浏览器中的更改,Rory在评论中建议添加}).focus();
似乎不再有任何区别 - 所以我仍然在寻找一种方法来检测页面加载时的焦点
更新2 我添加了一个onload作为“假装焦点”,到目前为止,这是我设法提出的最好的。不知道这是否是一个合理的解决方案,所以如果你有一个更好的解决方案,我很乐意参与其中。
window.onload = function(){
document.title="focus";
};
window.onblur = function() {
document.title="blur";
};
window.onfocus = function() {
document.title="focus";
};
答案 0 :(得分:-2)
https://jsfiddle.net/lorenzo_f/362f7ot4/10/
if(document.hasFocus()) {
$( "body" ).text("Windows got focus");
} else {
$( "body" ).text("Windows lost focus");
}
$( window ).on("focus", function() {
$( "body" ).text("Windows got focus");
});
$( window ).on("blur", function() {
$( "body" ).text("Windows lost focus");
});
<!DOCTYPE html>
<html lang="it">
<head>
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</body>
</html>