-webkit-overflow-scrolling:触摸会导致jQuery动态更改不显示



我在父div中有一堆div,这个父div允许水平滚动。

我设置了一些jQuery,以便在单击这些子div时更新它们的外观。这对于加载时可见的前几个div(即无需滚动(效果很好。但是,在移动设备上,对于需要水平滚动才能看到的div,我可以说 jQuery 确实可以识别发生的点击,但外观更改是不可见的(例如,在下面的示例代码中,span 元素的文本似乎没有改变(。我发现如果我从父div 中删除"-webkit-overflow-scrolling:touch"属性,那么它就可以正常工作(尽管滚动体验当然没有那么好,所以理想情况下我想要两全其美(

下面的指示性代码。此问题在移动Chrome和Safari(在iOS上(上都发生。感谢您的帮助!

<style>
 .hori-scroll {
        white-space: nowrap;
        overflow-x:auto;
        /*-webkit-overflow-scrolling: touch;*/
        -ms-overflow-style: -ms-autohiding-scrollbar;
    }
</style>
<div class='hori-scroll'>
    <div class='child'>
         <span class='grandchild'></span>
    </div>
</div>

<script>
   $('.child').click(function(){
       $(this).find('.grandchild').text('changed');
    });
</script>

刚刚发现将此 CSS 应用于子元素可以消除此问题:

-

webkit-transform: translate3d(0,0,0(

相关内容

  • 没有找到相关文章

最新更新