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