javascript - JQuery 将浏览器标题设置为模糊,以便在没有焦点的情况下工作

标签 javascript jquery onfocus

美好的一天,

在 stackoverflow 上找到的一段代码的帮助下,我成功地拼凑出了我自己版本的模糊标题更改脚本。

我面临的唯一问题是,当我加载页面时,我没有点击页面本身的任何位置{因此我没有“聚焦”}脚本不起作用。

我添加了一段代码,复制了 focus 方法并将其更改为加载。

$(function () {
    var message = '( ! ) :+Do not forget your reservation+:';
    var original = $('title').text();

    $(window).load(function () {
        console.log('window focussed');
        if (original) {
            document.title = original;
        }
    }).focus(function () {
        console.log('window focussed');
        if (original) {
            document.title = original;
        }
    }).blur(function () {
        console.log('window blurred');
        var title = $('title').text();
        if (title != message) {
            original = title;
        }
        document.title = message;
    });
    console.log('current title : ' + original);
});

但这并不能完全解决我的问题。 此时,我需要单击另一个选项卡,返回并再次单击另一个选项卡。所以这是毫无意义的。

为了让这个脚本从一开始就正常工作,我缺少什么?

<小时/>

解决方案 非常感谢:@Brian

添加尾随的 focus(); 就可以了。 (不是福特的那个......这很棒,但在这里不起作用)

最佳答案

.focus() 调用添加到链的末尾,以强制加载 focus 事件:

$(function () {
    var message = '( ! ) :+Do not forget your reservation+:';
    var original = $('title').text();

    $(window).load(function () {
        console.log('window focussed');
        if (original) {
            document.title = original;
        }
    })
    .focus(function () {
        console.log('window focussed');
        if (original) {
            document.title = original;
        }
    })
    .blur(function () {
        console.log('window blurred');
        var title = $('title').text();
        if (title != message) {
            original = title;
        }
        document.title = message;
    })
    .focus(); // add this line
    console.log('current title : ' + original);
});

关于javascript - JQuery 将浏览器标题设置为模糊,以便在没有焦点的情况下工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52080021/

相关文章:

javascript - 获取 URL 字符串形式的报告参数

javascript - 生成具有对数分布和自定义斜率的随机数

javascript - 禁用动态启用文本字段

javascript - 如何使用 Puppeteer 和 Chrome DevTools 协议(protocol)修改请求 header ? (可能是JS语法问题)

javascript - 制作select2的可滚动输入类型文本

javascript - 延迟 GIF 直到点击 (CSS/Javascript)

javascript - jQuery Autocomplete - 防止提交任何不是自动完成数组中的值的内容?

javascript - 如果所有复选框都被选中,则执行此操作,否则执行此操作(jQuery)

c++ - 仅当程序处于焦点时退出循环的关键监听器(c++)

html - 如何在单击焦点时创建嵌套下拉菜单(仅限 CSS)?