单击以更改背景切换
click to change background toggle
当我点击它时,它会改变背景。它工作正常。但是,如果我想再次单击它以恢复原始背景怎么办?我有这个代码:
jQuery(document).ready(function($) {
$(".select").on("click", function () {
$(this).css("background-image", "url(images/selected.png)");
});
});
这是jsfiddle示例
基本上,当我单击div时,它会更改背景,这很好。但是我希望能够再次单击它以恢复原始背景。这将是复选框的替代解决方案,但仅用于演示目的。
谢谢
JS
取代
$(this).css("background-image", "url(images/selected.png)");
跟
$(this).toggleClass("active");
风格
#multiselect .active {
background-image: url('...');
}
小提琴 http://jsfiddle.net/09xgrhxo/4/
与其使用 .css()
来更改background-image
,我会在您的 CSS 中添加一个类并使用 .toggleClass()
.
还要注意,简单地添加一个类不够具体,因为你的 css 正在使用:
#multiselect .select
您必须将添加为#multiselect
子级的类定位:
#multiselect .change
.CSS
#multiselect .change{
background-image: url(http://t2.gstatic.com/images?q=tbn:ANd9GcSZ51HqKXkejWAFcSBrodHd5eUN2QaIJro0jhN1YpmljSdQ5dj2)
}
.JS
$(".select").on("click", function () {
$(this).toggleClass("change");
});
小提琴
您可以使用
data-*
属性。
$('.select').attr('data-img', $('.select').css('background-image'));
$(".select").on("click", function() {
$(this).css("background-image", ($(this).css('background-image') == $(this).data('img')) ? "url(http://t2.gstatic.com/images?q=tbn:ANd9GcSZ51HqKXkejWAFcSBrodHd5eUN2QaIJro0jhN1YpmljSdQ5dj2)" : $(this).data('img'));
});
#multiselect .select {
background: url(http://t0.gstatic.com/images?q=tbn:ANd9GcQF_ErOlc78eOGZaEWb-dwPkrv2uyAoKx0Pbn3-e0tAZoUDSQRCsA) center;
width: 250px;
height: 100px;
margin-bottom: 20px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="multiselect">
<div class="select">Option1</div>
<div class="select">Option2</div>
<div class="select">Option3</div>
</div>
与其在javascrpt中编写background-img url,我建议创建两个具有相同属性但要切换的不同background-img url的类。 所以在这里我们将在 JavaScript 中切换类(最终是 background-img)。
参见JSFIDDLE [example][1]
[1]: http://jsfiddle.net/09xgrhxo/13/
相关文章:
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 如何在显示侧边栏时禁用背景,单击除侧边栏之外的任何位置都会关闭侧边栏
- 获取表中要更改的行的背景以进行单击
- 如何创建背景图像列表'URL,并使用jQuery在单击函数时应用它们
- 如何使模态的背景可以单击
- 谷歌工作表中的按钮,当单击时,会更改特定单元格的背景
- 使用 jQuery 单击链接时更改链接背景颜色
- 在按钮单击时将图像URL数据显示到弹出框中,而无需禁用背景
- 如何使用Kango框架在弹出框中单击按钮时更改网站的背景
- 通过右键单击更改完整日历中事件的背景颜色 - 不起作用
- 尝试在单击时使用Jquery更改html的背景颜色
- 单击时背景淡入
- on单击“更改背景图像”
- 使用jQuery单击时更改背景颜色
- 单击以使用 jquery 更改背景图像
- 单击时更改表格行的背景颜色
- JQuery - 单击时将背景图像替换为另一个背景图像
- 单击更改背景颜色
- 如何使用 jquery 单击输入类型按钮时更改画布背景图像
- 模糊按钮上的页面背景单击