当我尝试在我的Android手机中向下滑动时,我的iscroll对象不会向下滑动到底部但距底部有一定距离。 像这样的HTML模板:
/*The HTML template code like this:*/
<div class="content">
<div class="scroller">
<div class="div1">
</div>
</div>
</div>
/*The javascript code like this:*/
$.get(url, function(html){
_this.$('.div1').html(html);
_this.$('.div1').css('display','inline-block');
var width=_this.$('.div1').width()||'400px';
var height=_this.$('.div1').height()||'900px';
//height+=210;
if(width<=400)width=400;
_this.$('.div1').css('width',width);
_this.$('.div1').css('height',height);
_this.$('.scroller').css('width',width);
_this.$('.scroller').css('height',height);
if(html.indexOf('errorpage')<=0)
_this.$('.div1').addClass('padding-all-4px');
setTimeout(function () {
_this.scroll = new iScroll(_this.$('.content')[0],{
hScroll: true,
vScroll: true,
lockDirection: false,
zoom: true,
zoomMin: 0.5,
zoomMax: 4,
doubleTapZoom: 2
});
}, 0);
});
答案 0 :(得分:2)
使用iScroll有两种方法。您可以使用iScroll的jScroll包装器或纯iScroll。为了使iScroll正确地工作到你附加iScroll的容器,它应该满足一些条件
尝试这样的事情。
HTML模板代码如下:
<div class="content">
<div id="scroller_content">
<div class="dynamic-content">
<!-- you contents should be here -->
</div>
</div>
</div>
这样的javascript代码:
var scrollContent = new iScroll('scroller_content', {
/* other options goes here */
}
});
如果您将内容动态加载到子容器,那么您可以做的是在加载内容后只需刷新iScroll对象
scrollContent.refresh();
如果您想在iScroll中使用iScroll,请尝试这样的操作。
请说你启用了两个iScroll。 child_container 元素位于 parent_container 中。然后,
var parentScroller, childScroller, childScrollerTimeout;
parentScroller = new iScroll('parent_container',{
/* other options goes here */
});
childScroller = new iScroll('child_container',{
/* other options goes here */
onBeforeScrollStart : function(e){
clearTimeout(childScrollerTimeout);
parentScroller.disable();
},
onScrollEnd:function(){
childScrollerTimeout = setTimeout(function(){
parentScroller.enable()},500);
/* it is required to use timeout. If not second time onBeforeScroll will not work as expected */
}
});
如果您不明白,请告诉我。我会进一步证明。如果我在这里犯了任何错误,请向我道歉。希望这至少会有所帮助.. :)