この質問は、サブメニューのあるリストメニューのタッチイベントに関するものです。目的は、ワンタッチ->延長、2回目のタッチリトラクトで(モバイルデバイス上で)アクションを実行することです。別のアイテムをタッチ->それは伸び、前は縮みます。
ここに問題があります:iPad4.3.3はうまく機能します。iPhone5.1およびAndroid4-2番目のタッチが収縮および伸長します。望ましい効果ではありません。ここでモバイルデバイスから例を確認してください。見てくれてありがとう。
これはjQueryまたはモバイルOSのバグですか?
$(document).ready(function () {
if((navigator.userAgent.match(/iPhone|iPod|iPad|Android/i))) {
$('#nav li').click(function(){
// attach a click event listener to provoke iPhone/iPod/iPad's hover event
// Amended the next 3 lines
var $this_li = $(this);
$('#nav li ul').slideUp(function() {
$('ul', $this_li).slideDown();
});
});
} else {
// This part works in non-mobile browser
$('#nav li').hover(
function () {
//show its submenu
$('ul', this).slideDown(200);
},
function () {
//hide its submenu
$('ul', this).slideUp(200);
}
);
}
});