如何给窗户上的onblur听众

时间:2017-11-09 15:11:56

标签: javascript window event-listener

问题是, backgroundColor必须是" white"当您单击浏览器时,和 它必须转向" lightgray"当你点击浏览器外面的某个地方时。 我以为我可以通过向窗口对象提供onblur监听器和onfocus监听器来实现这一点。 但它没有成功。 我试过两种方式......有谁知道我有问题? 谢谢

enter image description here

enter image description here

2 个答案:

答案 0 :(得分:1)

更改此行

window.addEventListener('blur', function() {
   document.body.style.backgroundColor = "lightgrey";
});

/objects/object/items/item[
    not(
        custom_options/custom_option[bracelet_piece='engraving_style']/value = preceding::item[
            (
                custom_options/custom_option[bracelet_piece='engraving_style']/value = 'Black Engraving'
                or custom_options/custom_option[bracelet_piece='engraving_style']/value = 'Laser Engraved'
            )
            and not(product_type='configurable')
            and (
                product_attributes/product_type='Dog Tag'
                or product_attributes/product_type='Other Engraveable'
            )
        ]/custom_options/custom_option[bracelet_piece='engraving_style']/value
    )
    and (
        custom_options/custom_option[bracelet_piece='engraving_style']/value = 'Black Engraving'
        or custom_options/custom_option[bracelet_piece='engraving_style']/value = 'Laser Engraved'
    )
    and not(product_type='configurable')
    and (product_attributes/product_type='Dog Tag' or product_attributes/product_type='Other Engraveable')

not(product_type='configurable')

答案 1 :(得分:0)

要设置文档(即html元素)样式,您必须使用document.documentElement.style,而不是document.style

为了在将来自己检测此类错误,您应该始终在浏览器的开发者控制台(F12)中检查控制台输出是否存在语法错误或其他帮助文件消息,



// set the initial value:
document.documentElement.style.backgroundColor = document.hasFocus() ? 'yellow' : 'lightgrey';

window.addEventListener('focus', function() {
  document.documentElement.style.backgroundColor = 'yellow';
});
window.addEventListener('blur', function() {
  document.documentElement.style.backgroundColor = 'lightgrey';
});