Событие Jquery click элемента div в элементе, не запущенном в мобильном Safari

Исправлено: Наконец, я генерирую элементы непосредственно, а не получая jQuery.

Обновлено2: Кажется, это понятно. Я сделал пару тестов, только один уволил, что я вставляю в него ссылку. Но я не хочу связывать весь элемент li, но элемент div в li.

Обновлено: я сделал некоторые изменения о позициях divs, теперь он работает в android, но мобильный Safari даже любые элементы в списке ul.

Следующее работает в настольных Safari и Chrome, но не в мобильных версиях. Есть идеи?

ЯШ:

$('#SubCategories > li .likeRibbon').live('click', function () { ...... }); 

HTML:

 <ul id="SubCategories"> <li id="st2" > <div class="likeRibbon">Like?</div> </li> </ul> 

CSS:

 #SubCategories .likeRibbon { border-style: solid none solid none; border-width: 1px 0px 1px 0px; border-color: #565656; background-color: #565656; color: #333; text-shadow: 0 1px 0 #777, 0 -1px 0 black; line-height: 1; padding: 2px 0 5px 0; -moz-transform: rotate(-40deg); -ms-transform: rotate(-40deg); -o-transform: rotate(-40deg); -webkit-transform: rotate(-40deg); text-align: center; vertical-align: baseline; position: absolute; width: 100px; right: -35px; bottom: 5px; } 

Добавьте к элементу пустой атрибут onclick:

 <ul id="SubCategories"> <li id="st2" > <div onclick="" class="likeRibbon">Like?</div> </li> </ul> 

Ссылка на проблему jQuery, которая описывает проблему

Я думаю, что это связано с тем, как вы привязываете событие click, поскольку оно работает в браузере рабочего стола, но оно не в мобильных браузерах.

Вы можете обернуть свой код в событие pageinit?
Мобильные события jQuery

 <script type="text/javascript"> $("#pageID").live('pageinit', function() { // do something here... }); </script> 

Для iOS просто добавьте


     * .classidentifier * {
       курсор: указатель;
     }

В CSS для этого класса или id. Это устраняет проблему.