【问题标题】:iScroll on div with dynamically added imagesiScroll 在 div 上动态添加图像
【发布时间】:2013-05-09 15:31:23
【问题描述】:

我正在使用 PhoneGap 创建一个 iPhone 应用程序。我正在尝试将 iScroll 用于缩放功能。但是我遇到了一个问题,在我放大 div 之前我无法滚动。一旦我取消缩放 div,它就会自动滚动回顶部。

我查看了以下两个我认为会有所帮助的线程,但两种解决方案都不适用于我的情况。

Thread 1

Thread

我有一个在 AJAX 调用后添加了图像的 div。我围绕它创建了一个 div 包装器,它应该是可缩放的。代码如下

<div id = 'zoom-wrapper'>
    <div id="historyResponse"></div>
</div>

我有一个名为 showHistory() 的 JS 函数,它有一个 AJAX 调用。成功时,使用 .append() 将图像添加到 historyResponse div。

在阅读了上面提到的两个线程之后,我尝试在 JS 函数 showHistory() 的末尾添加 myScroll.refresh() 或销毁然后重新创建 myScroll 之类的内容,但没有解决我的问题。

我还有什么其他办法可以解决这个问题吗?

提前致谢!

【问题讨论】:

    标签: iphone cordova iscroll


    【解决方案1】:

    尝试传递此选项checkDOMChanges:true。当myScroll.refresh()失败时,它帮助我解决了类似的问题。

    类似的东西

    if('undefined' !== typeof myScroll){
       myScroll.destroy();
    }
    
    myScroll = new iScroll('<YOUR_ELEMENT_ID>', { checkDOMChanges:true });
    

    如果您仍然遇到问题,请尝试此操作

    if('undefined' !== typeof myScroll){
       myScroll.destroy();
    }
    
    myScroll = new iScroll('<YOUR_ELEMENT_ID>', { 
       checkDOMChanges:true, 
       onBeforeScrollStart : function(e){ 
          myScroll.refresh(); 
       } 
    });
    

    我希望至少有一种解决方案可以帮助您。 :)

    【讨论】:

    • 我可以把这段代码放在要添加图片的 JS 函数中吗?
    • 在你初始化iScroll的地方
    猜你喜欢
    • 2015-06-13
    • 2012-07-15
    • 2016-08-28
    • 2013-08-25
    • 1970-01-01
    • 1970-01-01
    • 2021-04-23
    • 2020-08-11
    • 1970-01-01
    相关资源
    最近更新 更多