我想要做的是当我点击任何 li 元素时它应该改变颜色。问题是当我放置 a:active 它在 android 4.0 和更高版本上工作但它在 android 2.3 和更低版本上不起作用。我不知道是什么问题。有没有其他方法可以在我按下它时更改 li 的背景颜色?
HTML:
<div id="nav">
<ul id="navigation">
<li><a href="#">Requirements</a></li>
<li><a href="#">Release dates</a></li>
<li><a href="#">Game Plot</a></li>
<li><a href="#">Game Review</a></li>
<li><a href="#">About</a> </li>
<li><a href="#">About</a> </li>
</ul>
CSS:
#navigation a:active
{color:pink;
background-color:#FF5C33;
}
注意: a:hover 适用于 android 2.3 及以下版本。
最佳答案
您可以使用 javascript 为您完成此操作,而不是依赖伪选择器。
将您的 css 更改为此...
#navigation a.active {
color:pink;
background-color:#FF5C33;
}
并添加这个 javascript...
$(function() {
$("#navigation a").on("mousedown", function() {
$(this).addClass("active");
}).on("mouseup", function() {
$(this).removeClass("active");
});
});
这应该适用于较早版本的 Android,它将使用较旧版本的 WebView。
关于android - :active not working on phonegap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22044697/