Я создаю небольшое веб-приложение для iPad, и у меня есть несколько элементов, которые я предотвращаю от прокрутки пользователем, предотвращая по умолчанию на событие touchmove. Однако у меня возникла ситуация, когда мне нужно, чтобы пользователь мог прокручивать дочерний элемент.
Я пытался использовать e.stopPropagation(); но безуспешно! Я также попытался определить элемент под пальцем и поместить e.preventDefault(); внутрь оператора if, но опять же безрезультатно. Или, может быть, я просто что-то перепутал...
Есть идеи? Удаление .scroll div'ов из #fix div - это последнее средство, поскольку это вызовет всевозможные головные боли.
EDIT
Мне удалось разобраться с этим. Похоже, я не понял, как использовать .stopPropagation(); упс!
Рабочий код:
<div id="fix">
<h1>Hi there</h1>
<div class="scroll">
<ul>
<li>List item</li>
<li>List item</li>
<li>List item</li>
</ul>
</div>
<div class="scroll">
<ul>
<li>List item</li>
<li>List item</li>
<li>List item</li>
</ul>
</div>
</div>
И Javascript:
$('body').delegate('#fix','touchmove',function(e){
e.preventDefault();
}).delegate('.scroll','touchmove',function(e){
e.stopPropagation();
});