我在JqueryMobile中单击时如何在ListView上添加颜色

时间:2014-04-17 10:22:21

标签: jquery html css listview jquery-mobile

嗨我试着在ListView上添加颜色当我点击时 我有列表视图: -

   <!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css">
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script>
</head>
<style>


#aks:active {
    content: url('http://dummyimage.com/100x100/eb00eb/fff');
}

</style>

<body>
<div data-role="page" id="pageone">
<ul id="mylist" data-role="listview"  data-split-theme="c">

<li><a  id="aks" href="audi.html">mahindra Scorpio</a></li>
<li><a href="audi.html">BMW</a></li>
<li><a href="audi.html">Audi</a></li>
<li><a href="audi.html">BenZ</a></li>

</ul>
</div>
</body>
<html>

此代码将显示listView但现在我想要当我点击列表项目(当我点击宝马时)它应该变为绿色,当点击释放它应该恢复到原始颜色。

请给我任何想法

2 个答案:

答案 0 :(得分:0)

您可以使用绿色背景创建一个类(如果您愿意,可以在悬停时加上深绿色):

.activeLI .ui-btn {
    background-color: #CFF09E !important;
}
.activeLI .ui-btn:hover {
    background-color: #A8DBA8 !important;
}

然后处理LI的click事件并简单地切换类:

$(document).on("pagecreate", "#page1", function () {
    $("#mylist").on("click", "li", function(){        
        $(this).toggleClass("activeLI");
    });    
});
  

<强> DEMO

注意:如果您使用的是jQM 1.3而不是最新的

.activeLI {
    background-color: #CFF09E !important;
    background-image: none;
}

背景直接应用于LI,背景图像用于渐变。

  

<强> jQM 1.3 DEMO

答案 1 :(得分:0)

你应该添加

$("#mylist").find("li").removeClass("activeLI");

删除所有课程并停用最后一个背景