wbj8886
wbj8886
  • 发布:2015-03-10 15:56
  • 更新:2015-03-11 16:49
  • 阅读:3656

动态添加加图片轮播,但加载完后轮播首张图总是最后加载的一张图片

分类:MUI

你好:
动态添加加图片轮播,但加载完后轮播首张图总是最后加载的一张图片,用slider().gotoItem(0)也跳转不了,请问此句应该加在哪里才可以,还是怎样设置才对?

2015-03-10 15:56 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

贴一下你怎么动态添加图片轮播的代码

wbj8886

wbj8886 (作者)

mui.ajax(url, {
dataType: 'json', //服务器返回json格式数据
type: 'get', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
success: function(data) {
for (var i = 0, len = n2; i < len; i++) {
rownumber = data.result[0].rownumber[i];
styleid = data.result[0].styleid[i];
s_name = data.result[0].s_name[i];
j_price = data.result[0].j_price[i];
pf_price = data.result[0].pf_price[i];
var new_li = document.createElement("li");
new_li.className = 'mui-table-view-cell mui-media mui-col-xs-6 mui-col-sm-3';
new_li.id = styleid;
new_li.setAttribute("onclick", "linkstyleid(this.id)");
var new_a = document.createElement('a');
new_a.href = '#';
var new_img = document.createElement('img');
new_img.className = 'mui-media-object';
new_img.src =url + styleid + '_1.jpg';
var new_div1 = document.createElement('div');
new_div1.className = 'mui-media-body';
new_text1 = rownumber + '>款式:' + styleid;

            var new_div2 = document.createElement('div');  
            new_div2.className = 'mui-media-body';  
            new_text2 = '名称:' + s_name;  

            var new_div3 = document.createElement('div');  
            new_div3.className = 'mui-media-body';  
            new_text3 = '专享价:' + j_price;  

            var new_div4 = document.createElement('div');  
            new_div4.className = 'mui-media-body';  
            new_text4 = '批发价:' + pf_price;  

            var textNode1 = document.createTextNode(new_text1);  
            var textNode2 = document.createTextNode(new_text2);  
            var textNode3 = document.createTextNode(new_text3);  
            var textNode4 = document.createTextNode(new_text4);  
            new_div1.appendChild(textNode1);  
            new_div2.appendChild(textNode2);  
            new_div3.appendChild(textNode3);  
            new_div4.appendChild(textNode4);  

            new_li.appendChild(new_a);  
            new_li.appendChild(new_img);  
            new_li.appendChild(new_div1);  
            new_li.appendChild(new_div2);  
            new_li.appendChild(new_div3);  
            new_li.appendChild(new_div4);  

            document.getElementById("sytles").appendChild(new_li)  
        }  
    },  
    error: function(xhr, type, errorThrown) {  
        //异常处理;  
        alert(errorThrown + ' 数据加载有误!')  
    }  
});
DCloud_UNI_FXY

DCloud_UNI_FXY

你直接生成整个轮播控件,然后调用mui('#slider').slider()呢?

wbj8886

wbj8886 (作者)

你意思是<div class="mui-slider">把这个也生成进去,mui('#slider').slider() 这个加载到 ajax(data)数据处理完的尾部?

DCloud_UNI_FXY

DCloud_UNI_FXY

是的。

wbj8886

wbj8886 (作者)

另外再问一下,
mui.plusReady(function(){
//关闭等待框
plus.nativeUI.closeWaiting();
//显示当前页面
mui.currentWebview.show();
}); 这个是放在AJAX(data){ } 里面,还是放在ajax外面,因为wait窗口总是关不掉

DCloud_UNI_FXY

DCloud_UNI_FXY

这个要看你想实现的效果,如果是等ajax完成之后,再closeWaiting,那就放在ajax里边完成之后。

wbj8886

wbj8886 (作者)

你好,动态生成轮播,按你所说的把轮播控件也生成进去,现在是可以显示第一张,但是轮播不了,也就是说不可以滑动切换了

DCloud_UNI_FXY

DCloud_UNI_FXY

生成之后,需要你自己手动执行一下mui('#slider').slider();里边的选择器是你的轮播控件选择器

发飙的蜗牛

发飙的蜗牛

问下 ,将demo放入现有原生的工程中,demo都点不进去,只能到列表页,引入现有的Android工程的时候,需要做什么操作么?下图的demo都点不进去。

发飙的蜗牛

发飙的蜗牛

加群讨论:156611324

wbj8886

wbj8886 (作者)

你好,可以了,想问问怎样可以调滑动的灵每度,因为手指只能正左右滑,如果偏一点方向就滑不动了

DCloud_UNI_FXY

DCloud_UNI_FXY

你指的是哪个页面的哪个功能的左右滑灵敏度?

wbj8886

wbj8886 (作者)

是指图片轮播,左右滑动情况

该问题目前已经被锁定, 无法添加新回复