的颜色使用jquery在鼠标hover和单击事件上进行更改
我想在鼠标上方将li的颜色更改为红色。 并且在点击事件中也保持相同的颜色。 我有以下清单,
- list1
- list2
- sublist1
- sublist2
- sublist3
- sublist4
- list3
- list4
list1 list2 sublist1 sublist2 sublist3 sublist4 list3 list4
如果我单击list1,它的颜色应该变为红色,同时如果我将鼠标hover在另一个列表上,它将显示为红色。 它的默认颜色是黑色。
使用css:
li:hover { color:red; }
这不建议:
li:focus { color: red; }
JQuery的
$('li').click(function(){ $(this).css('color','red'); });
// CSS: Create the highlight accessible with two classnames. .highlight, .highlight_stay{ color:red; }
jQuery的
$(function(){ $('li').hover(function(){ $(this).addClass('highlight'); }, function(){ $(this).removeClass('highlight'); }); $('li').click(function(){ $(this).addClass('highlight_stay'); }); });
要在单击不同的li
时删除单击颜色,请将最后一个函数更改为:
$('li').click(function(){ $(li).removeClass('highlight_stay'); $(this).addClass('highlight_stay'); });
鼠标hover – css
li:hover { color: red; }
如果你想让它变成绿色只有你点击 – css
li:active { color: green; }
如果你想让它改变颜色并保持这种颜色–JQuery
$("li").click(function (){ $(this).css("color","green") });
但是你可以考虑读取$("blah").addClass()
因为它可以帮助DOM加载更快。 在JQuery上使用css $(this).css("color","green")
“直接”可以减慢项目变大的速度