如何在javascript中循环

How do I loop this in javascript?

本文关键字:循环 javascript      更新时间:2023-09-26

所以我有一个onclick事件,然后在同一次点击上另一个事件。基本功能如下:

1)点击图片-放大700%2)再次点击图片- 100%缩放3)再次点击图片-缩放100%

我希望步骤3恢复到步骤1,然后到步骤2等。现在,它只是永远重复步骤2,而不是恢复到默认值。

代码如下:

$(document).ready(function() {
    $(".zoomTarget").debug();
    $(window).resize(function(evt) {
        $(".zoomTarget").debug();
    });
    $(".zoomTarget").click(function(evt) {
        evt.stopPropagation();
        $(this).zoomTo({
            targetsize: 5.0
        }); {
            $(".zoomTarget").click(function(evt) {
                evt.stopPropagation();
                $("body").zoomTo({
                    targetsize: 1.0
                });
            });
        }
    });
    $(document).click(function(evt) {
        evt.stopPropagation();
        $("body").zoomTo({
            targetsize: 1.0
        });
    });
    $("body").zoomTo({
        targetsize: 1.0
    });
};

我个人会在ready函数中使用布尔值来跟踪我所处的状态,然后在处理程序中切换它:

var zooming_in=true;
$(".zoomTarget").click(function(evt) {
     evt.stopPropagation();
     $(this).zoomTo({
          targetsize: (zooming_in=!zooming_in)?5.0:1.0
     });
});