javascript - Phonegap 文本区域滚动

标签 javascript iphone ios cordova touch

我有一个 phonegap 应用程序,我通过应用文档触摸移动和 prevent.default() 禁用了 webview 的滚动;

问题是我有两个文本区域,如果文本溢出,我想滚动它们。防止默认值会干扰这一点。

我已经尝试了几种解决方法,但结果不一,目前为止最好的是以下函数来检测触摸移动事件的 x 和 y,并且仅在它落在文本区域之外时才应用阻止默认值。

function preventBehavior(e) 
{ 
    console.log("event.targetTouches[0].pageX = " + event.targetTouches[0].pageX + " event.targetTouches[0].pageY = " + event.targetTouches[0].pageY);

    var x = event.targetTouches[0].pageX;
    var y = event.targetTouches[0].pageY;

    //fix the scroll of textareas for iOS by avoiding prevent default in them 
    if (x > 20 && x < 300 && y > 80 && y < 230){
        //touch falls within first text area
    }else if (x > 20 && x < 300 && y > 245 && y < 400){
        //touch falls within second text area
    }else{
        e.preventDefault(); 
    }
};
document.addEventListener("touchmove", preventBehavior, false);

现在的问题是,如果文本区域不需要滚动,那么它会滚动整个网络应用。

有人对这个问题有明确的解决办法吗?

提前致谢。

最佳答案

您可以使用 iscroll.js如果您只想滚动文本字段。它也适用于桌面网络浏览器。

关于javascript - Phonegap 文本区域滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10353171/

相关文章:

ios - 查询 Firebase 和过滤 FDataSnapshot 的正确方法

javascript - 在 Openlayers 3 中查询多个层中的多个特征

javascript - Nginx、React、Node & Let's Encrypt……如何将 Nginx 指向我的 React 应用程序

javascript - 在 Chrome DevTools 中使用 Closure Library

iphone - 如何更改 UISearchBar 以用文本替换文本字段内的搜索图标

ios - Swift - 核心数据被覆盖

javascript - jQuery toggleClass 如果不工作

ios - 循环中所有值的延迟

iphone - UITableView 单元格重用、低内存警告、加载图像后设备中的应用程序崩溃

当我在没有计算机的情况下运行 iOS 应用程序时,它有时会在启动时崩溃。怎么能诊断这个?