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

QQ登录

只需一步,快速开始

查看: 4596|回复: 3

[处理中5] 关于动态生成content

[复制链接]

23

主题

74

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
发表于 2015-6-27 17:57:34 | 显示全部楼层 |阅读模式
之前发过一个帖子询问动态生成content的,感谢管理员的解答,问题已经解决了。
但是后来我动态生成对应的li时,出现了些问,求助管理员大神帮忙看下。
动态生成的效果是没有问题的,只不过li的active没有对应正确,我修改之后能对应上,而且点击li图片也能正确切换,但是我打包成app后滑动切换却发生了错位的现象。改回去吧,li又对应不上,改来改去我脑子都成浆糊了,只能来求大神帮忙了。
感觉是contents的onActiveChange方法中有些问题,貌似event中的from和to的值不大对头,我也混乱了。
代码附上 contentsNew.rar (40.35 KB, 下载次数: 939)

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2015-6-29 11:52:29 | 显示全部楼层
目前发现contents组件的onActiveChange事件的参数不一致
如果是从第一页滑动到第二页,event.from是0,event.to是1
如果是调用to方法,从第一页切换到第二页,,event.from是1,event.to是2
这个问题已经提交缺陷,编号 2015062900002

现在的解决方法是在li的click事件中再次设置class
        Model.prototype.modelLoad = function(event){
                //将detail数据组件中的图片地址加载到新生成content中的img空间中
        var self=this;
        var i=0;
        this.comp('detailData').each(function(param){
            var newContent = self.comp('contents1').add({});
            var div = $("<div xid='div"+i+"'><img src='"+Model.prototype.toUrl(param.row.val("fImageUrl"))+"'  xid='image"+i+"' class='m-img' style='width:100%'></img></div>");
            justep.Bind.addNodes(newContent.domNode, div);
            
            var ul = self.getElementByXid('ul1');
                    //添加 li
                    var li = document.createElement("li");
                    //设置 li 属性,如 id
                   li.setAttribute("index", i);
                   li.setAttribute("style", 'width:50px;');
                    ul.appendChild(li);
            i=i+1;
        });
        
        this.comp("contents1").to(0);
        var indicators = $('[xid="contents1"]>.carousel-indicators>li'), m = this;
                indicators.click(function() {
                        var index = parseInt($(this).attr("index"));
                        m.comp('contents1').to(index);
                        $(".carousel-indicators li").removeClass('active');
                        $(this).addClass('active');
                });
        };

        Model.prototype.contents1ActiveChange = function(event){
                $(".carousel-indicators li").removeClass('active');
                var to = parseInt(event.to);
                if(event.from == -1)
                        to = 0;
                if (!isNaN(to)) {
                        var li = $(".carousel-indicators li").eq(to);
                        li.addClass('active');
                }
        };
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

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

使用道具 举报

23

主题

74

帖子

305

积分

中级会员

Rank: 3Rank: 3

积分
305
QQ
 楼主| 发表于 2015-6-29 17:09:51 | 显示全部楼层
zhaixin 发表于 2015-6-29 11:52
目前发现contents组件的onActiveChange事件的参数不一致
如果是从第一页滑动到第二页,event.from是0,even ...

OK,亲测好用,谢谢,可以结贴了!
回复 支持 反对

使用道具 举报

发表于 2015-7-16 18:50:58 | 显示全部楼层
您好楼主,该缺陷已经在3.2版本中得到解决,如没有特殊限制!建议您用新版本
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 22:43 , Processed in 0.107701 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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