微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 鼠标悬停,而mousedown

我有一个大桌子,每个单元格是25×25,每个单元格里面都有一个div.每个div都有“node”类,背景颜色应用于它们.我正在编写一些jQuery代码,当鼠标按住鼠标时,会改变每个div的颜色.

我现在有它,所以它工作时,我的鼠标悬停,但我只想要它的工作,当鼠标按钮也一样.我已经尝试了许多不同的方式让它工作,但到目前为止,我没有看,下面是我当前的代码.

$(document).ready(function(){
  $(".node").mouSEOver(function(){
   $(this).css({background:"#333333"});
 });
});

解决方法

尝试这样的东西:
$(document).ready(function(){

  var isDown = false;   // Tracks status of mouse button

  $(document).mousedown(function() {
    isDown = true;      // When mouse goes down,set isDown to true
  })
  .mouseup(function() {
    isDown = false;    // When mouse goes up,set isDown to false
  });

  $(".node").mouSEOver(function(){
    if(isDown) {        // Only change css if mouse is down
       $(this).css({background:"#333333"});
    }
  });
});

编辑:

您可能希望在.node上单独进行mousedown以进行单独的项目选择.

$('.node').mousedown(function() {
    $(this).css({background:"#333333"});
  });

编辑:

这是使用bind和unbind的另一种方法.

$(document).mousedown(function() {
      $(".node").bind('mouSEOver',function(){
          $(this).css({background:"#333333"});
      });
  })
  .mouseup(function() {
    $(".node").unbind('mouSEOver');
  });

  $('.node').mousedown(function() {
    $(this).css({background:"#333333"});
  });

原文地址:https://www.jb51.cc/jquery/179335.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐