Нажмите и Mousemove для iPhone?

0

У меня проблемы с mouseover и нажмите события. Он работает на настольных/портативных веб-браузерах, но не на iPhone Safari. Вот код:

<script type="text/javascript">
function tog(v){return v?'addClass':'removeClass';} 
$(document).on('input', '.clearable', function(){
$(this)[tog(this.value)]('x');
}).on('mousemove', '.x', function( e ){
$(this)[tog(this.offsetWidth-100 < e.clientX-this.getBoundingClientRect().left)]('onX');   
}).on('click', '.onX', function(){
$(this).removeClass('x onX').val('');
});
</script>

X - это ясный значок, который появляется в каждом поле поиска, но я просто не могу "щелкнуть" его на iPhone. Замена "mousemove" для touchmove не сработала. К сожалению, я не смог адаптировать подключаемый модуль jQuery Mobile, но я кодирую noob. Спасибо! Happy Hallo '

Теги:
iphone

2 ответа

1

u должен использовать touchstart и touchmove для iphone

  • 0
    не могли бы вы сориентировать меня на это, пожалуйста?
  • 1
    Вы можете использовать его просто: ... on ('mousemove touchmove', '.x', function (e) {// do sth}); и: on ('нажмите touchstart', function (e) {// do sth});
Показать ещё 3 комментария
0

Как указано выше, сафари браузера iphone не имеет мыши, поэтому вам нужно использовать события touchstart и touchmove.

Проверьте это. Обратите внимание, что firefox mobile и safari обрабатывают touch аналогичным образом, а документы MDN немного полезнее, чем документы w3c

https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Events/Touch_events

И документы W3c:

http://www.w3.org/TR/2013/REC-touch-events-20131010/

  • 0
    спасибо, но я искал более конкретную адаптацию к моей модели

Ещё вопросы

Сообщество Overcoder
Наверх
Меню