0

我在 android phonegap 移动网站应用程序中遇到问题,我在我的应用程序中应用了滚动条,它在 PC 中运行良好,但是当我在 android 设备(手机)中测试时滚动条无法启用。

4

3 回答 3

1

我个人不喜欢 iscroll .. 使用它有很多问题,所以我发现了另一种解决方案......你可以试试这个:

1.)将您的DIV溢出设置为自动(或滚动)并设置其高度..例如

     <div id="wrapper" style="overflow:auto; height: 200px">...content...</div>

(我通常根据用户的屏幕尺寸用 javascript 计算高度。我从来没有为所有设备设置一个固定的高度,这只是为了这个“演示”的目的)

2.)添加这个javascript:

      <script>
function isTouchDevice(){
    try{
        document.createEvent("TouchEvent");
        return true;
    }catch(e){
        return false;
    }
}

function touchScroll(id){
    if(isTouchDevice()){ //if touch events exist...
        var el=document.getElementById(id);
        var scrollStartPos=0;

        document.getElementById(id).addEventListener("touchstart", function(event) {
            scrollStartPos=this.scrollTop+event.touches[0].pageY;
            event.preventDefault();
        },false);

        document.getElementById(id).addEventListener("touchmove", function(event) {
            this.scrollTop=scrollStartPos-event.touches[0].pageY;
            event.preventDefault();
        },false);
}
} 
</script>

3.) 在页面加载时调用它.. 如果你使用 jQuery:

$(document).ready(function() { 
   touchScroll("wrapper");
});

4.) 如果您希望滚动条可见,只需定义以下 CSS 规则:

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  border-radius: 10px;
}

::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: #000;
} 
于 2013-03-01T10:47:13.887 回答
0

使用此 PhoneGap 链接

http://phonegap.pbworks.com/w/page/22863184/Hide%20the%20scrollbar%20in%20Android

这适用于 Android ,PhoneGap 垂直和水平滚动的应用程序

于 2012-12-17T11:25:03.200 回答
0

代码看起来像这样

公共类 MyActivity 扩展 DroidGap {

@Override
  public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    super.loadUrl("file:///android_asset/www/index.html");

     // Display vertical scrollbar and hide horizontal scrollBar
     super.appView.setVerticalScrollBarEnabled(true);
     super.appView.setHorizontalScrollBarEnabled(false);
    // set scrollbar style
    super.appView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
}

}

于 2012-12-17T11:32:26.437 回答