2014-02-13 3 views
0

Я пытаюсь создать некоторый пользовательский интерфейс JQuery. Можно ли узнать, выбирает ли пользователь слева направо или налево? Я попытался этим решением, но это не работаетJqueryUI Выбираемое направление

var last_selected_id="first"; 

$(".selectable").selectable({ 
    selecting: function(event, ui) { 
if(last_selected_id=="first") 
{ 
//first, do nothing 
} 
else 
{ 
    if(ui.selecting.id>last_selected_id) 
    { 
    //left to right 
     console.log('left to right'); 
    } 
    else 
    { 
     console.log('right to left'); 
    } 
    last_selected_id = ui.selecting.id; 
},.... 

Идентификаторы последовательно больше слева направо

ответ

0

вы недостающие 2 statments, один на самом начале произнося ui.selecting.id>- и еще, если когда ui.selecting.id находится ниже last_element_id этот код должен work`

if(ui.selecting.id>0) 
     { 
      if(last_selected_id=="first") 
       { 
       console.log(last_selected_id); 
       } 
       else 
       { 
        if(ui.selecting.id>last_selected_id) 
        { 
        //left to right 
         direction = "ltr"; 
        }else if(ui.selecting.id<last_selected_id){ 
        //right to left 
         direction = "rtl"; 
        } 

       } 
       if(ui.selecting.id>0){ 
        last_selected_id = ui.selecting.id;    
       } 
      } 
    }, 
3

Вы должны использовать координаты курсора мыши, предоставляемые объекта события JQuery UI.

var startX; 
    var direction; 

    $(".selectable").selectable({ 
    start: function(event, ui) { 
     startX = event.pageX; 
     direction = ""; 
    }, 
    selecting: function(event, ui) { 
     direction = (event.pageX >= startX) ? "right" : "left"; 
    } 
    });