您好我正在与JQM制作混合应用程序。 我想按下或点按(按住)按钮时添加课程。
这是我的代码......
<a href='btnWhite on'>button</a>
CSS
.btnWhite { background:gray }
.btnWhite.on { background:black }
jQuery Mobile
$('.btnWhite').bind('touchstart', function() {
$(this).addClass("on");
});
$('.btnWhite').bind('touchend', function() {
$(this).removeClass("on");
});
答案 0 :(得分:2)
工作示例:http://jsfiddle.net/Gajotres/LvhdG/
在此示例中,我使用了 vmousedown
, vmouseup
和 vmousecancel
事件,因此我可以在桌面/移动设备上进行测试。如果您愿意,只需将其替换为 touchstart
, touchend
和 touchcancel
,但它也会与vmouse活动合作。
HTML:
<!DOCTYPE html>
<html>
<head>
<title>jQM Complex Demo</title>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=no; target-densityDpi=device-dpi"/>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" />
<!--<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>-->
<script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>
</head>
<body>
<div data-role="page" id="index">
<div data-theme="b" data-role="header">
<h1>Index page</h1>
</div>
<div data-role="content">
<a data-role="button" class="btnWhite">button</a>
</div>
</div>
</body>
</html>
Javascript:
$(document).on('pagebeforeshow', '#index', function(){
$(document).on('vmousedown','.btnWhite' ,function(){
$(".btnWhite").addClass('on');
}).on('vmouseup', function(){
$(".btnWhite").removeClass('on');
}).on("vmousecancel", function() {
$(".btnWhite").removeClass('on');
});
});
CSS:
.btnWhite {
background:gray !important;
}
.on {
background:black !important;
}