jquery 选中元素时改变背景色及文字颜色 其他背景色及文字颜色恢复 未选中的元素鼠标滑过时修改背景颜色
时间: 2023-09-19 16:07:03 浏览: 159
改变设置默认选中项背景及颜色
可以使用以下代码实现:
```javascript
// 给需要选中的元素添加一个 class,比如 selected
$('.selected').css({
'background-color': 'red', // 改变背景色为红色
'color': 'white' // 改变文字颜色为白色
}).hover(function() { // 鼠标滑过时,修改背景颜色为绿色
$(this).css('background-color', 'green');
}, function() {
$(this).css('background-color', 'red'); // 鼠标移开时,恢复背景颜色为红色
});
$('.selected').siblings().css({
'background-color': '', // 其他兄弟元素的背景色恢复为空
'color': '' // 其他兄弟元素的文字颜色恢复为空
}).hover(function() { // 鼠标滑过时,修改背景颜色为黄色
$(this).css('background-color', 'yellow');
}, function() {
$(this).css('background-color', ''); // 鼠标移开时,恢复背景颜色为空
});
$('li:not(.selected)').hover(function() { // 未选中的元素鼠标滑过时,修改背景颜色为灰色
$(this).css('background-color', 'gray');
}, function() {
$(this).css('background-color', ''); // 鼠标移开时,恢复背景颜色为空
});
```
这里同样假设需要选中的元素已经添加了一个 `selected` 的 class,如果没有,可以根据实际需求修改。使用 `:not()` 选择器来选择除了选中元素以外的其他元素,再用 `hover()` 方法来监听鼠标滑过事件和移开事件,从而修改它们的背景颜色。在滑过事件和移开事件中,使用 `$(this)` 来获取当前元素,再用 `css()` 方法修改它的背景色即可。
阅读全文