javascript - 更改 div 背景 firefox vs chrome

标签 javascript jquery html css google-chrome

我的页面上有一个 div,我想通过单击它来更改其背景。背景可以是没有颜色的“透明”,也可以是红色/粉红色。

我有一个 javascript 函数可以检查当前背景颜色并根据它进行更改:

if (buttonBackground == "transparent") {
                //"rgba(0, 0, 0, 0)") {
 $('#delete_button_container_' + buttonNumber).css('background-color', '#ff9494');

} else if (buttonBackground == "rgb(255, 148, 148)") {

 $('#delete_button_container_' + buttonNumber).css('background', 'none');

}

问题是对于透明色,chrome 将背景色属性读取为 "rgba(0, 0, 0, 0)" 但 firefox 将其读取为 "transparent"。但是,他们都将颜色为“#ff9494”的背景颜色属性读取为 "rgba(0, 0, 0, 0)"

所以这显然是一个问题,如果我有 if (transparent) chrome 不起作用,如果我有 if (reba(0000)) firefox 不起作用。关于如何解决此问题的任何想法?

最佳答案

我会通过类(class)来解决这个问题。你可以有 delete_button_container的默认状态是透明或颜色,没关系,但添加一个覆盖默认设置颜色的类。

HTML:

<div class="deleteButtonContainer transBackground"></div>

JS:

if($('#delete_button_container_' + buttonNumber).hasClass('transBackground')){
 $(this).removeClass('transBackground');
} else {
 $(this).addClass('transBackground');
}

CSS:

.deleteButtonContainer{
    background-color: rgb(255, 148, 148);
}

.deleteButtonContainer.transBackground{
    background-color: none;
}

编辑:更改选择器以使用 OP 正在使用的 ID。

关于javascript - 更改 div 背景 firefox vs chrome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27966972/

相关文章:

javascript - 使用 jquery 构建自动完成功能时遇到问题

html - 同一行上的图标很棒

javascript - Angular ng-show 与功能不同步

php - 使用 Ajax 在 React.js 中提交表单

javascript - 从公共(public)文件夹中的脚本运行index.js中的函数

javascript - 在 flask 应用程序中,如何根据 View 中发现的条件在 ajax 发布期间重定向到新页面?

javascript - 主 div 不能随动态内容正确缩放

javascript - Kendo excel 导出 - 如何使用自定义模板导出列?

php - 动态 HTML 表格上的 jQuery 循环产生意外结果

javascript - 使用 Jeditable 插件验证 URL 字段