毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> windows平台 >> 正文

通过JS填充DOM元素再实例化的iScroll对象不能正常运行

更新时间:2013-4-10:  来源:毕业论文

通过JS填充DOM元素再实例化的iScroll对象不能正常运行
var viewBasic = {     container:"#data-box",     options:{         option:null,         product_type:'pc',         list_type:'harvesting',         resource_type:'tmr',         Period_time:null    },     scroll:function(scrollId){          return new iScroll(scrollId, {snap: 'li',momentum: false,hScroll:true,hScrollbar: false,vScrollbar: false });     } };     function tickerPage(){     this.url = '';     this.columns=['AUTO','LIFE'];     this.players=[null,null];     this.scrolls=[null,null]; }; tickerPage.prototype = viewBasic; tickerPage.prototype.afterEnd = function(){           this.tickerDataDemo();     /*初始化 滚动条 */    var o = this;     setTimeout(function(){         for(var i=0; i< o.columns.length; i++){                         o.scrolls[i] = o.scroll('listScroller_'+i);         }     },300); }; tickerPage.prototype.tickerDataDemo = function(){     var o = this,str = "";     str +=' <div id="data-list">';     for(var i=0; i< o.columns.length; i++){       str +=' <div class="data-list-item">';           str +=' <div class="data-list-bar">';               str +=' <label>'+o.columns[i]+'</label>';           str +=' </div>';           str +=' <div class="data-list-content">';                 str +=' <div class="wrapper" id="listScroller_'+i+'">';                     str +='<div class="scroller"><ul></ul></div>';                 str +=' </div>';           str +=' </div>';       str +=' </div>';     }       str +=' </div>';     $(this.container).html(str);        /* 模拟数据 begin*/        var dom = new Array;          for(var j=0; j<20; j++){             dom.pushu( "<li>test example ...</li>")         }         /* 模拟数据 end*/         for(var i=0; i<2; i++){               o.addItems(i,dom)           } } tickerPage.prototype.addItems = function(i,dom){     var o = this,target = $("#listScroller_"+i+" > .scroller:first");     var elms = "",w = target.width();     for(var n=0; n<dom.length; n++){         elms += dom[n];     }     /*                   1:向前填充数据         2:修改上下错落样式 --> 修改容器宽度         3:滚动条移动到第一个元素               */          $("ul:first",target).prepend(elms);     o.setItemsPadding(target);     var unitWidth = $("li",target).length == 0 ? 0:$("li:first",target).width();     var wrapperWidth = w +  unitWidth * dom.length;     target.width(wrapperWidth);           if(o.scrolls[i]){         o.scrolls[i].refresh;         o.scrolls[i].scrollToElement('li:nth-child(1)',800);     }   }   var view = new tickerPage()       view.tickerDataDemo()

通过以上方法实例化出来的 iscroll 对象不能正常工作。不知道是哪里的问题
虽然有点长,还是希望大家可以看完他
如果我没看错的话,最后addItem的时候你传到scroll:function(scrollId)这里的scrollId是0,1吧?

这里对么?我用过iScroll记得第一个参数传的是一个DOM节点。就算可以传DOM节点的ID,你这里传进去的是0跟1,也找不到这样的DOM节点吧?

o.setItemsPadding(target); 这行可以注释掉
下面是他们提供的案例代码

JavaScript code?123456789101112131415 var myScroll; function loaded() {     myScroll = new iScroll('wrapper', {         snap: true,         momentum: false,         hScrollbar: false,         onScrollEnd: function () {             document.querySelector('#indicator > li.active').className = '';             document.querySelector('#indicator > li:nth-child(' + (this.currPageX+1) + ')').className = 'active';         }      }); }   document.addEventListener('DOMContentLoaded', loaded, false);

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。