没有.html()里面的jQuery函数没有运行

时间:2015-11-20 14:28:05

标签: jquery cordova touchstart touchmove

我正在尝试制作带有phonegap的手机应用程序,并想制作一个我可以从左侧拖入的菜单。这段代码正如我所希望的那样(在此阶段),但如果我从touchmove函数中删除行$("#myElement").html(changePos);,它将停止工作。 这条线只是用于监控数字而我不再需要了,但为什么没有它呢?

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

0 个答案:

没有答案