首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >移动设备上的图像拖拽故障

移动设备上的图像拖拽故障
EN

Stack Overflow用户
提问于 2020-01-07 23:15:48
回答 1查看 60关注 0票数 0

我已经构建了一个快速块,允许用户在图像上放大,然后拖动(平移和缩放)。

为此,我使用了panzoom:

代码语言:javascript
复制
jQuery(document).ready(function( $ ) {

  $("#panzoom").panzoom({
    $zoomRange: $(".zoom-range"),
    $reset: $(".reset"),
    contain: 'invert',
  });

});
代码语言:javascript
复制
.wrap{
  position: relative;
  background: black;
  padding: 60px 20px;
  height: 600px;
}
.wrap .padding, section{
  height: 100%;
}

.wrap .buttons {
  position: absolute;
  z-index:1;
  top: 0;
  right:0;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.panzoom/2.0.6/jquery.panzoom.min.js"></script>

<div class="wrap">
  
  <div class="padding">
  
    <section>
      <div id="panzoom" style="text-align: center">
          <img src="https://i.imgur.com/KhWo66L.png" width="100%">
      </div>
    </section>

    <section class="buttons">
      <button class="reset">Reset</button>
      <input type="range" class="zoom-range">
    </section>
    
  </div>
  
</div>

上面的代码在桌面上运行良好。但在移动设备上,由于用户使用屏幕滚动,当试图拖动图像时,它会“卡顿”。

很难解释,最好在实际的设备上演示。

你知道这里的问题是什么吗?

EN

回答 1

Stack Overflow用户

发布于 2020-01-07 23:58:54

改用这个library,它更稳定

代码语言:javascript
复制
// just grab a DOM element
const element = document.querySelector('.wrap');

// And pass it to panzoom
panzoom(element);
代码语言:javascript
复制
.wrap{
  position: relative;
  background: black;
  padding: 60px 20px;
  height: 600px;
}
.wrap .padding, section{
  height: 100%;
}

.wrap .buttons {
  position: absolute;
  z-index:1;
  top: 0;
  right:0;
}
代码语言:javascript
复制
<script src='https://unpkg.com/panzoom@8.7.3/dist/panzoom.min.js'></script>

<div class="wrap">
  
  <div class="padding">
  
    <section>
      <div id="panzoom" style="text-align: center">
          <img src="https://i.imgur.com/KhWo66L.png" width="100%">
      </div>
    </section>

    <section class="buttons">
      <button class="reset">Reset</button>
      <input type="range" class="zoom-range">
    </section>
    
  </div>
  
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59631178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档