首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JS:在event-listener中以数学方式减少缩放值

JS:在event-listener中以数学方式减少缩放值
EN

Stack Overflow用户
提问于 2012-05-28 22:33:45
回答 1查看 256关注 0票数 0

我正在做这个:

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

    var dom = document.body,
        fs = 16,
        min = 16,
        max = 100,
        scale;

    dom.addEventListener("gesturechange", gestureChange, false);

    function gestureChange(e) {

        e.preventDefault();

        scale = e.scale;
        fs = Math.round(fs*scale);

        if ( fs <= max && fs >= min )
            $('#element').css('width', fs+'px');

        if ( fs > max ) fs = max;
        if ( fs < min ) fs = min;
    }

});

因此,当我在我的iPhone上做一个收缩/缩放手势时,#element的宽度会增加。fs是它所增加的值。然而,现在放大和增加的速度太快了。因此,只要我的手指在屏幕上稍微移动一下,宽度的增加就会相当大。

我想知道我如何以及是否可以将fs值“乘以”(或其他)某个值,从而使整个体验变慢?我只想让我的变焦速度慢一点。

对此有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2012-05-28 22:38:35

只需将您自己的比例因子应用于整个缩放计算:

代码语言:javascript
运行
复制
var myScale = 5; // Test which value is best suited for your needs
fs = Math.round(fs*(scale/myScale));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10786341

复制
相关文章

相似问题

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