在鼠标移动移动DIV的另一个DIV中(moving a div on mousemove insid

2019-09-28 08:01发布

我想使一个div其内部在X轴移动鼠标的相反方向上的容器的div移动(只有左和右)。

这是我到目前为止有:

HTML

<div class="container">
    <div class="box"></div>
</div>

CSS

.container { width: 450px; height: 52px; border: 1px #000 solid; position: relative; }
.box { width: 50px; height: 50px; border: 1px #000 solid; position: absolute; right: 200px; }

jQuery的

$(document).ready(function(){
  $('div.container').mousemove(function(e){
        var x = e.pageX - this.offsetLeft;
      if ($('div.box').css('right') <= '400') {
          $('div.box').css({'right': x}); 
      }
  });
});

的jsfiddle - http://jsfiddle.net/eyalbin/qQmu7/49/

出于某种原因,功能停止几秒钟后工作。

谁能帮助请

Answer 1:

试试这个: 的jsfiddle

你写了

if ($('div.box').css('right') <= '400')

代替

if (x <= 400)

:)



Answer 2:

这应该这样做

$(document).ready(function(){
  $('div.container').mousemove(function(e){
      var x = e.pageX - this.offsetLeft;
      if ((x <= 400)) {
          $('div.box').css({'right': x}); 
      }
  });
});

小提琴



Answer 3:

$(document).ready(function(){
   $('div.container').on('mousemove',function(e){
    var x = e.pageX - this.offsetLeft;

      $('div.box').css({'right': x}); 

   });
});

检查此链接做工精细猪头...

爵士小提琴演示



Answer 4:

$('#parent .child').mousemove( function(e) {


       var parent_x = this.offsetLeft; //get parent position
       var parent_y = this.offsetTop;      

       var mouseX   =  e.pageX; //get mouse move position
       var mouseY   =  e.pageY;

       var boxPositionX = mouseX-parent_x+5;
       var boxPositionY = mouseY-parent_y+5;

       $('.hover-box',this).css({'top': boxPositionY,'left': boxPositionX});
    });

///////// CSS

.hover-box{
   position:absolute;
}


文章来源: moving a div on mousemove inside another div