我已将colorbox添加到包含产品属性的网站。当用户选择了属性并关闭弹出窗口时,我要么想要更改用于打开弹出窗口的按钮的背景颜色,要么显示标记,以便他们知道他们已经从网格布局中选择了该产品的选项。
我在彩盒上发射了一个关闭事件。我用警报测试了它("关闭"),所以我知道它正在激活。
所以我补充道:
$(document).bind('cbox_closed', function(){
document.getElementById('.inline').style.backgroundColor = "#f3f3f3";
});
但它没有改变"内联"的背景颜色。类。
我做错了什么? 如果我决定使用带有display:none隐藏的复选标记;覆盖显示的过程是什么:无; CSS?
由于
答案 0 :(得分:1)
我在这里看到几个问题:
一个。您错误地“通过ID”访问了类名。切换到jQuery CSS选择器和css()方法来改变BG颜色:
$(document).bind('cbox_closed', function(){
$('.inline').css({backgroundColor: "#f3f3f3"});
});
B中。您可能希望直接在构造函数的colorbox选项中添加事件侦听器,而不是在应该执行得更好的文档上添加,并在彩色框被销毁时杀死侦听器(没有内存泄漏):
$('#my_colorbox').colorbox({
// options
onClosed: function() {
$('.inline').css({backgroundColor: "#f3f3f3"});
}
});
答案 1 :(得分:0)
您无法使用document.getElementById()
访问该课程。请改用document.querySelectorAll('.inline')
。
或使用jquery方式
$('.inline').css('backgroundColor', '#f3f3f3');
使用
$(document).bind('cbox_closed', function(){
document.querySelectorAll('.inline').style.backgroundColor = "#f3f3f3";
});