这里很奇怪。早些时候,我一直在搞乱touchmove
我正在构建的 iOS webapp 中的默认行为。添加事件侦听器并防止传播很容易,但我需要将默认行为添加回它的其中一个孩子。据我了解,由于父母被禁用,孩子永远不会注册该事件。
所以我需要一个解决方案。
本质上,有很多滑动正在进行,所以默认的身体滚动行为需要被淘汰。滑动时左右滑动的页面令人愤怒。自然,我必须将事件侦听器添加到外部容器中。无法避免。
如何将默认的浏览器控制行为添加回其中一个孩子?我不想用我自己的物理和所有东西来伪造它。
谢谢你的帮助。
HTML:
<div id="mainPanel"> <!-- add event listener and preventDefault(); -->
<div id="nonScrollingPanel></div>
<div id="scrollingPanel></div> <!-- add event listener and re-enable default -->
</div>
JavaScript:
$bod.on('touchmove', '#mainPanel', function(event){
event.preventDefault();
});
$('#mainPanel').on('touchmove', '#scrollingPanel', function(){
return true;
});