gpt4 book ai didi

javascript - jquery panzoom js 存在问题,调用 destroy 时增量值不会被销毁

转载 作者:行者123 更新时间:2023-12-03 08:44:07 25 4
gpt4 key购买 nike

我在处理 jquery.panzoom.js 时遇到问题

我的要求是单击一个按钮以允许多次缩放图像。我有一个缩放按钮的原因是,我还有一个平移按钮,所以我必须单击它们,并且在鼠标滚轮上我必须相应地处理平移或缩放。

我的问题是,即使在调用 destroy() 方法之后,增量参数也会按 当前 + 上一个 增量递增,这使得缩放增加超过 0.1,尽管每次都设置该参数。

它的增加如下:

transform : matrix(0.1, 0, 0, 0.1, 0, 0)
transform : matrix(0.2, 0, 0, 0.2, 0, 0)

再次单击缩放按钮后,

transform : matrix(0.4, 0, 0, 0.4, 0, 0)
transform : matrix(0.6, 0, 0, 0.6, 0, 0)

再次单击缩放按钮后,

transform : matrix(0.9, 0, 0, 0.9, 0, 0)
transform : matrix(1.2, 0, 0, 1.2, 0, 0)

我知道最直接的问题是为什么我要一次又一次地点击它们?答案是因为我需要对图像进行一些其他操作,例如添加矩形或圆形等。

我的代码:

$section.panzoom("destroy"); 
$section.panzoom(
{
disablePan: disablePan,
increment: 0.1,
minScale: 0.1,
maxScale: 50,
$reset: $("#resetImg")
});
$section.on('mousewheel', function( e ) {
e.preventDefault();
var delta = e.delta || e.originalEvent.wheelDelta;
var zoomOut = delta ? delta < 0 : e.originalEvent.deltaY > 0;
if(UIConstants.zoomActivated == true) {
$section.panzoom('zoom', zoomOut, {
increment: 0.1,
animate: false,
focal: e
});
} else {
$section.panzoom('zoom', zoomOut, {
increment: 0.1,
animate: false,
focal: e
});
}
});

最佳答案

检查 JQueryUI https://jqueryui.com/draggable/为了获得拖动物体的灵 active 。您可以尝试那里的示例。

为了缩放,最好保留一个标志变量,而不是每次都触发事件。

关于javascript - jquery panzoom js 存在问题,调用 destroy 时增量值不会被销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32963811/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com