javascript - 如何让这个脚本只执行一次?

标签 javascript jquery

我有这个很棒的剧本。它占用了我的整个网页,并在<button>上显示了它的背面。点击。爱它。但我只希望它翻转一次,然后锁定该翻转。如何禁用 div 翻转后的点击?

(function() {


$(document).ready(function() {
    var count, rotateX;
    rotateX = 0;
    count = 0;
    $(".container").on("mousedown", function() {
      rotateX += 180;
      $("body").css({
        "transform": "scale(1.2)"
      });
      if (count % 2 === 0) {
        return $(".container").css({
          "box-shadow": "0px 32px 56px rgba(0,0,0,.1)"
        });
      } else {
        return $(".container").css({
          "box-shadow": "0px -32px 56px rgba(0,0,0,.1)"
        });
      }
    });
    return $(".container").on("mouseup", function() {
      $(this).css({
        "transform": "rotateX(" + rotateX + "deg)"
      });
      $("body").css({
        "transform": "scale(1)"
      });
      if (count % 2 === 0) {
        $("body").css({
          "background": "transparent"
        });
        $(".container").css({
          "box-shadow": "none"
        });
      } else {
        $("body").css({
          "background": "#165730"
        });
        $(".container").css({
          "box-shadow": "0px 2px 4px rgba(0,0,0,.1)"
        });
      }
      return count++;
    });
  });

}).call(this);

最佳答案

使用jquery.one实现您现在正在尝试的方法

可能您需要将事件处理程序更改为,

return $(".container").one("mouseup", function() {....

希望这有帮助!

关于javascript - 如何让这个脚本只执行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46250953/

相关文章:

javascript - 测试 react 组件(context.router - 未定义)

javascript - Jquery:选择文本时运行代码

javascript - jQuery 替换 HTML 标签插件

javascript - 即使客户端没有提供回调,有没有办法从服务器发送响应?

javascript - Google Maps Javascript API 显式访问 GeoJSON 功能属性

javascript - 使用彼此相邻堆叠的多边形包围多个单独的点集

javascript - 如何识别单击了 Slickgrid 中一个单元格中的两个按钮中的哪一个

javascript - 在 Safari 中使用 jQuery 的变量赋值失败?

jquery - 带控件的水平滚动文本菜单

javascript - 外部 html 文件未填充 div