2

phonegapで電話アプリを作ろうとしていて、左からドラッグできるメニューを作りたいです。このコードは、(この段階では) 希望どおりに$("#myElement").html(changePos);機能していますが、 touchmove 関数から行を削除すると、機能しなくなります。この行は数字を監視するためのもので、もう必要ありませんが、これがないと機能しないのはなぜですか?

var touchStartPos = {x:0, y:0};
            var windowWidth = $(window).width()*3;
            var relativePos = 0;
            var menuOpen = false;
            var menuWidth = 200;
            var touchStartPos = 0;
            var menuPos = -windowWidth;

            $("#menu").css('width', windowWidth);
            $("#menu").css('left', menuPos);

            $(document).on("touchstart", function(e) {
                touchStartPos = e.originalEvent.changedTouches[0].pageX;
                menuPos = $("#menu").position().left;
            });

            $(document).on("touchmove", function(e) {
                e.preventDefault();
                var x = e.originalEvent.changedTouches[0].pageX;
                relativePos = x - touchStartPos;
                var changePos = menuPos + relativePos;
                $("#myElement").html(changePos);
                $("#menu").css('left', changePos);
            });

            $(document).on("touchend", function(e) {
                $("#menu").css('left', -windowWidth);
                $("#myElement").html($("#menu").position().left);
            });

4

0 に答える 0