jQuery在模糊中将浏览器标题设置为工作宽度焦点

时间:2018-08-29 14:31:43

标签: javascript jquery onfocus

美好的一天,

借助于在stackoverflow上找到的一段代码,我设法将自己的on模糊标题更改脚本版本组合在一起。

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

我添加了一段代码,在其中复制了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();可以达到目的。 (不是福特公司的那辆。.很棒,但是在这里不起作用

1 个答案:

答案 0 :(得分:1)

在链的末尾添加一个.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);
});