2015-10-02 4 views
0

Не могли бы вы помочь мне определить, какой элемент «taphold» уволен с помощью js, jquery или jq mobile. моего HTML структура, как указано нижеКак получить элемент, на котором срабатывает taphold (jquery mobile)

<script> 
 
    $(document).on("pagecreate", function() {  
 
     $("#myFilesListView").bind('contextmenu', function (event) { 
 
      event.preventDefault(); 
 
      event.stopPropagation(); 
 
      return false; 
 
     }); 
 
    }); 
 
    $(document).ready(function() { 
 
     $("#myFilesListView").bind("taphold", function (event) { 
 
      event.preventDefault(false); 
 
      event.stopPropagation();   
 
      var ID = $(this).child().attr("id"); 
 
      alert(ID); 
 
     }); 
 
    }); 
 
</script>
<div data-role="page" id="page1"> 
 
     <div data-role="header"></div> 
 
     <div data-role="main"> 
 
      <ul data-role="listview" id="mylistview"> 
 
       <li class="mydata" id="1"> some conetent</li> 
 
       <li class="mydata" id="2"> some conetent</li> 
 
       <li class="mydata" id="3"> some conetent</li> 
 
       <li class="mydata" id="4"> some conetent</li> 
 
       <li class="mydata" id="5"> some conetent</li> 
 
       <!--ids are not in predefined sequences and there may be 100s of list--> 
 
      </ul> 
 
     </div> 
 
<div data-role="fotter"></div> 
 
</div>
в моем яваскрипте кода я в состоянии предотвратить поведение по умолчанию taphold, но я не получаю, как получить Id определенного списка, как только пользователь коснется и удерживает этот список.

ответ

1

Вы можете связать taphold с литиевыми элементами вместо ListView:

$(document).on("pagecreate", "#page1", function() {  
    $("#mylistview").on('contextmenu', function (event) { 
     event.preventDefault(); 
     event.stopPropagation(); 
     return false; 
    }); 

    $("#mylistview li").on("taphold", function (event) { 
     var ID = $(this).prop("id"); 
     alert(ID); 
    }); 
}); 

DEMO

+0

Спасибо за ценный ответ ..... его работу как шарм , я сделал это так: «$ (document) .on (« taphold »,« .touchableImage », function (event) { var ID = $ (this) .attr (" id "); hm.files.rightClickOptions (ID); }); « –

+0

У меня появилось новое сомнение в отношении контекстного меню, и мне нужна помощь для этого, поэтому я должен опубликовать это здесь или создать новый вопрос. –

+0

@ManjeetSingh, размещение в качестве нового вопроса позволит привлечь больше людей, которые смотрят на него, и, скорее всего, более быстрый ответ. , – ezanker