jquery 切换到浏览器中其他打开的选项卡时,更改title标记的内容

kx5bkwkv  于 2023-02-18  发布在  jQuery
关注(0)|答案(4)|浏览(127)

我最近在两个不同的网站上看到了这个,有人知道它是怎么做的吗?如果你打开了多个标签,而你离开了当前的一个,标签中的标题就会改变。非常好的技巧!
http://blog.invisionapp.com/
http://zerosixthree.se/create-a-responsive-header-video-with-graceful-degradation/

kxkpmulp

kxkpmulp1#

这通过在windowonfocusonblur事件上注册处理程序来实现。
jQuery风格:

$(window).on('blur', function() { ... });

不使用jQuery:

window.onblur = function() { ... }

如果不清楚:页面标题可以通过document.title读取/写入

utugiqy6

utugiqy62#

$(function() {
  var message = "Don't forget us";
  var original;

  $(window).focus(function() {
    if (original) {
      document.title = original;
    }
  }).blur(function() {
    var title = $('title').text();
    if (title != message) {
      original = title;
    }
    document.title = message;
  });
});
vfwfrxfs

vfwfrxfs3#

原始编码人:https://flintobox.com/blog/

$(function () {
    var message = "Hey, come back!";
    var original;

    $(window).focus(function() {
      if(original) {
        document.title = original;
      }
    }).blur(function() {
      var title = $('title').text();
      if(title != message) {
        original = title;
      }
      document.title = message;
    });
  });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
lymnna71

lymnna714#

$(function () {
    var message = "Hey, come back!";
    var original;

    $(window).focus(function() {
      if(original) {
        document.title = original;
      }
    }).blur(function() {
      var title = $('title').text();
      if(title != message) {
        original = title;
      }
      document.title = message;
    });
  });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

相关问题