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

标签 jquery html css listview jquery-mobile

嗨,我尝试在单击时在 ListView 上添加颜色 我有这样的 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 但现在我想当我单击列表项时(当我单击 BMW 时)它应该变为绿色,当单击释放时它应该恢复为原始颜色。

请给我任何想法

最佳答案

您可以创建一个具有绿色背景的类(如果您愿意,可以在悬停时添加深绿色):

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

然后处理LI的点击事件,简单的切换类:

$(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

关于jquery - 当我在 JqueryMobile 中单击时如何在 ListView 上添加颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23130546/

相关文章:

javascript - 如何在用户向下滚动页面 150px 后将图像显示为菜单项?

javascript - 如何仅在单击另一个元素时显示特定元素

jquery - 如何使用jquery文件上传插件在mysql中插入带有id的图像?

javascript - 使用 HTML CSS 和 JS 创建模板

html - 类似于 "table-layout:fixed"但仅适用于一个表列

css - Joomla CSS 类不工作

javascript - 当我们离开文本框时捕获事件

javascript - Jquery Widget vs Jquery Plugin,区别,什么时候使用哪个?

html - 仅在 IE-10 及以上浏览器中更改禁用的选择元素的字体颜色

CSS多类选择器来控制:hover effect