查了很多资料,也没有找到解决办法,最后自己给滑动区域写一个拖拽事件
//开始拖动
var cantrans=change=oldtrans=newtrans=0;
mui('.attentionDiv').on('dragstart','.contentDiv',function(event){
event.stopPropagation();
var showwidth=$(this).parent().width();
var totalwidth=$(this).width();
cantrans=totalwidth-showwidth;
//console.log('内容总长度:'+totalwidth+',显示宽度:'+showwidth+',可以移动的距离:'+cantrans);
if(cantrans<=0)return false;
var havetrans=$(this).attr('value');
oldtrans=havetrans?parseInt(havetrans):oldtrans;
$(this).css('transform','translate3d(0px, 0px, 0px) translateZ(0px)')
});
//拖动中
mui('.attentionDiv').on('drag','.contentDiv',function(event){
event.stopPropagation();
if(cantrans<=0)return false;
var fun=$(this).css('transform').substr(19,1);
change=event.detail.deltaX;
newtrans=oldtrans+change;
newtrans=newtrans>=0?0:(Math.abs(newtrans)>=cantrans?-cantrans:newtrans);
// console.log('改动前trans'+oldtrans+',改动trans'+change+',改动后trans'+newtrans);
$(this).css('transform','translate3d('+newtrans+'px, 0px, 0px) translateZ(0px)')
});
//拖动结束
mui('.attentionDiv').on('dragend','.contentDiv',function(event){
if(cantrans<=0)return false;
oldtrans=newtrans;
$(this).attr('value',oldtrans);
});