1

iPad で Web アプリケーションを実行しています。このアプリケーションには、Kendo UI アコーディオンが含まれています。

ページのコンテンツが画面のサイズよりも大きく、スクロールしたい場合、通常のページスクロールが発生します (期待どおり)。しかし、Kendo アコーディオンをスクロールしようとすると、アコーディオン スクロールではなくページ スクロールが発生します (予期しない)。

Chris Barr によって提供されたソリューションを適用することで、この問題を部分的に処理できました。

このソリューションを適用した後、私が望んでいたページ全体ではなく、アコーディオンがスクロールされます。

しかし問題は、アコーディオンのアイテムをクリックしても、アコーディオンのアイテムが展開されないことです。どうすればこれを機能させることができますか。

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);
}}
4

1 に答える 1

1

イベント リスナーで削除event.preventDefault()します。touchstartスクロール可能な領域内のリンクをクリックできるようになります。

于 2013-07-30T06:53:46.423 に答える