起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4043|回复: 10

[处理中5] 用touch的demo 出现问题

[复制链接]

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
发表于 2015-9-28 19:04:52 | 显示全部楼层 |阅读模式
使用向右滑动删除会出现删除按钮没有被隐藏,直接显示在界面上。
场景:
使用夜神安卓模拟器,打包不采用增强型浏览器。浏览器模拟运行正常

1.png
2.png

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2015-9-29 11:38:48 | 显示全部楼层
发一下相关代码
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
 楼主| 发表于 2015-9-29 11:57:05 | 显示全部楼层
zhaixin 发表于 2015-9-29 11:38
发一下相关代码

用的就是3.2.1里的demo运行
demo地址model\UI2\system\components\justep\touch\demo\touchjs\mainActivity.w,第四个content。滑动删除
回复 支持 反对

使用道具 举报

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
 楼主| 发表于 2015-9-29 12:57:30 | 显示全部楼层
zhaixin 发表于 2015-9-29 11:38
发一下相关代码

主要代码部分
  1. <div class="x-contents-content" xid="newsContent">
  2.           <div class="x-scroll" component="$UI/system/components/justep/scrollView/scrollView"
  3.             xid="demoList">
  4.             <div class="x-content-center x-pull-down container" xid="div15">
  5.               <i class="x-pull-down-img glyphicon x-icon-pull-down" xid="i7"/>  
  6.               <span class="x-pull-down-label" xid="span6">下拉刷新...</span>
  7.             </div>  
  8.             <div class="x-scroll-content" xid="div14">
  9.               <div xid="newsList" class="x-list" component="$UI/system/components/justep/list/list"
  10.                 data="newsData" limit="8">
  11.                 <ul class="x-list-template" style="padding-top:6px;" xid="listTemplateUl1">
  12.                   <li class="media" style="padding-left:6px; padding-right:6px;overflow:visible;position:relative;display:block;"
  13.                     xid="li1">
  14.                     <div style="overflow:hidden;" xid="div21">
  15.                       <div class="x-blob x-blob-radius pull-left media-object x-news-image"
  16.                         xid="div16">
  17.                         <img class="x-blob-img x-autofill" bind-attr-src="$model.getImageUrl($object)"
  18.                           xid="image4"/>
  19.                       </div>  
  20.                       <div class="media-body" xid="div17">
  21.                         <h4 class="media-heading" bind-text="ref('fTitle')"
  22.                           xid="h41"/>  
  23.                         <div bind-text="ref('fContent')" xid="div18"/>
  24.                       </div>
  25.                     </div>  
  26.                     <div class="x-swipe-area" xid="div22">删除</div>
  27.                   </li>
  28.                 </ul>
  29.               </div>
  30.             </div>  
  31.             <div class="x-content-center x-pull-up" xid="div13">
  32.               <span class="x-pull-up-label" xid="span7">加载更多...</span>
  33.             </div>
  34.           </div>
  35.         </div>
复制代码
回复 支持 反对

使用道具 举报

发表于 2015-9-29 16:47:12 | 显示全部楼层
这个需要使用代码控制隐藏,滑动的时候再显示出来!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
 楼主| 发表于 2015-9-29 17:42:42 | 显示全部楼层
liangyongfei 发表于 2015-9-29 16:47
这个需要使用代码控制隐藏,滑动的时候再显示出来!

怎么实现呢,我试试了还是会显示原来的行上,不是空白区。另外,因为是同一个ID,所以,显示和隐藏就会有冲突,第二个就不显示了。。。Model.prototype.swipeDelete = function() {
                var briefMsgContentID = this.getIDByXID('briefMsgContent');
                var swipeAreaSize = 100;
                var dx;
                var deleteRowDivId = this.getIDByXID('deleteRowDiv');
                touch.on('#' + briefMsgContentID, 'touchstart', function(ev) {
                        ev.preventDefault();
                        var $swipNode = $('#' + briefMsgContentID + " li").has(ev.target);
                        dx = parseInt($swipNode.attr('swipeX') || "0");
                });

                touch.on('#' + briefMsgContentID, 'drag', function(ev) {
                        var $swipNode = $('#' + briefMsgContentID + " li").has(ev.target);
                        if (ev.direction === "left" || ev.direction === "right") {
                                dx = dx || 0;
                                var offx = dx + ev.x;
                                if (offx < swipeAreaSize * -1) {
                                        offx = swipeAreaSize * -1;
                                }
                                if (offx > 0) {
                                        offx = 0;
                                }
                                if (ev.direction === "right" && $swipNode.hasClass('x-swipe-out')) {
                                        $swipNode.css({
                                                'transform' : 'translate3d(' + offx + 'px,0,0)'
                                        });
                                } else if (ev.direction === "left" && (!$swipNode.hasClass('x-swipe-out'))) {
                                        $swipNode.css({
                                                'transform' : 'translate3d(' + offx + 'px,0,0)'
                                        });
                                }
                        }
                });
                touch.on('#' + briefMsgContentID, 'dragend', function(ev) {
                        var $swipNode = $('#' + briefMsgContentID + " li").has(ev.target);
                        if (ev.direction === "left") {
                                $('#' + deleteRowDivId).show();
                                $swipNode.css({
                                        'transform' : 'translate3d(-' + swipeAreaSize + 'px,0,0)'
                                });
                                $swipNode.addClass('x-swipe-out');
                                dx = swipeAreaSize * -1;
                        } else if (ev.direction === "right") {
                                $('#' + deleteRowDivId).hide();
                                $swipNode.removeClass('x-swipe-out');
                                $swipNode.css({
                                        'transform' : 'translate3d(0,0,0)'
                                });
                                dx = 0;
                        }
                        $swipNode.attr('swipeX', dx);
                });
        };

1.jpg
回复 支持 反对

使用道具 举报

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
 楼主| 发表于 2015-9-29 23:53:47 | 显示全部楼层
moses_wang 发表于 2015-9-29 17:42
怎么实现呢,我试试了还是会显示原来的行上,不是空白区。另外,因为是同一个ID,所以,显示和隐藏就会有 ...

请大神门帮忙看看呢,怎么解决
回复 支持 反对

使用道具 举报

发表于 2015-9-30 09:05:54 | 显示全部楼层
moses_wang 发表于 2015-9-29 23:53
请大神门帮忙看看呢,怎么解决

不要使用id,可以使用name!这样返回的就是个数组了!根据当前行数据可知道数组的索引!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

36

主题

110

帖子

186

积分

初级会员

Rank: 2

积分
186
QQ
 楼主| 发表于 2015-9-30 10:30:31 | 显示全部楼层
liangyongfei 发表于 2015-9-30 09:05
不要使用id,可以使用name!这样返回的就是个数组了!根据当前行数据可知道数组的索引! ...

恩,这样可以,但是我滑动的时候,红色方块不是出现在多出的白色区域,而是在原来的DIV上附加的,这个有什么好的方法吗
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2015-9-30 15:22:19 | 显示全部楼层
在小米手机上测试,确实有这个问题
我们已提交到产品组(内部编号:2015093000011),感谢楼主的支持与配合。

远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-19 06:56 , Processed in 0.088122 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表