2012-03-26 1 views
2

Как вы можете сделать что-то вроде следующего?Как добавить события касания к классу? .. Предпочтительно через jquery

$('.myDivs').ontouchstart(function(){ 
alert('touch'); 
}) 

единственный способ, которым я по-видимому, иметь возможность реализовать сенсорные события использует JavaScript .. как так

document.getElementById('singleDiv').addEventListener("touchstart",touchHandler, false); 

Однако я хотел бы осуществить это к классу, а не ид .. . Таким образом, есть способ сделать это с помощью JQuery как в примере выше ....

Я нашел ответ:

$('.myDivs').bind('touchstart', function (event) { alert('touch');}); 

Сердечные приветы J

+0

I борется с этим целую вечность, а затем через 2 минуты я нахожу ответ: $ ('. myDivs'). bind ('touchstart', function (event) {alert ('touch');}); – jon

ответ

3

По JQuery 1.4.2, следующие прекрасно работает для меня:

$('.classname').live('touchstart', function(e) { 
    // Do whatever you want here... 
}); 

Или для последних версий JQuery:

$('.classname').on('touchstart', function(e) { 
    // Do whatever you want here... 
}); 
+0

Спасибо BenM Я посмотрю на это ... привет J – jon

+0

Протестировал их, и оба отлично работают, если у вас есть, как указано в ответе, правильные версии jquery (чего я не сделал!) Спасибо Ben – jon

+0

Рад помощь, @jon! – BenM

0

просто выбрать класс вместо ID:

document.getElementsByClassName('myClass').addEventListener(...); 

пожалуйста, не то, что этот селектор не будет работать в IE. Для IE вы можете использовать JQuery:

$('.myClass').on("click",function(){}); 
+0

Событие 'onclick' отличается от события' ontouchstart' в большинстве мобильных браузеров. Например, iOS выполняет события щелчка после небольшой задержки (браузеру необходимо сначала проверить, выполняет ли пользователь что-то, например, прокрутка, масштабирование и т. д.). – BenM

+0

Я даже не думал о том, какое событие ему нужно, проблема, как я ее видел, заключалась в том, чтобы выбрать класс. – Th0rndike

+0

Спасибо Th0rndike, но document.getElementsByClassName ('myClass'). AddEventListener по какой-то причине не работает ... Мне нравится, что вы так думали. – jon

Смежные вопросы