jQuery Mobile с событием touchmove

Я пытаюсь управлять переключателем Basic, как показано в следующей документации:

http://demos.jquerymobile.com/1.4.5/flipswitch/

Мой код:

HTML

    <div class="ui-flipswitch ui-shadow-inset ui-bar-inherit ui-corner-all ui-mini">
    <a href="#" class="ui-flipswitch-on ui-btn ui-shadow ui-btn-inherit">On</a>
    <span class="ui-flipswitch-off">Off</span>
    <select data-role="flipswitch" data-mini="true" 
name="login-memo-codice-inpt" id="login-memo-codice-inpt" class="ui-
flipswitch-input" tabindex="-1" disabled="">
    <option value="off">Off</option>
    <option value="on">On</option>
    </select>
    </div> 

JAVASCRIPT

inputManager.my_slider=function(page){
    var enableTap=false;
    var executed=false;
    var flipswitch=page.find(".ui-flipswitch");
    flipswitch.on("touchstart",function(e){
        enableTap=true;
        executed=false;
    });
    flipswitch.on("tap",function(){
        if(executed){
            return false;
        }
    });     
    flipswitch.on("touchmove",function(e){
        if(enableTap){
            enableTap=false;
            $(this).trigger("click");
            executed=true;
        }           
    });
    flipswitch.on("touchend",function(e){
        enableTap=false;
    });                     
    page.find(".ui-flipswitch-input").prop("disabled",true);
    page.find(".ui-flipswitch-input").on("touchstart focus",function(event){
        event.preventDefault();             
        $(this).blur();
        return false;
    });
    if(libs.check_current_device().ieMobile){
        flipswitch.on("mousedown",function(e){
            $(this).trigger("click");
        });
    }
};

Это работает, когда я проведу пальцем слева (ON) вправо (OFF) или справа (OFF) влево (ON).

Мои проблемы:

  1. если я держу палец на ВКЛ, а затем проведу пальцем вправо (ВЫКЛ), состояние перейдет в состояние ВЫКЛ, а затем сразу же вернется в положение ВКЛ;
  2. если я держу палец на ВЫКЛ, а затем проведу пальцем влево (ВКЛ), состояние перейдет в состояние ВКЛ, а затем сразу же вернется в положение ВЫКЛ.

Как решить это?

0 ответов

Другие вопросы по тегам