我正在尝试使一个容器div内的div在X轴(仅左右)上沿鼠标的相反方向移动。
这是我到目前为止所做的:
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/
由于某种原因,该功能在几秒钟后停止工作。
任何人都可以帮忙吗
答案 0 :(得分:2)
答案 1 :(得分:0)
这应该这样做
$(document).ready(function(){
$('div.container').mousemove(function(e){
var x = e.pageX - this.offsetLeft;
if ((x <= 400)) {
$('div.box').css({'right': x});
}
});
});
答案 2 :(得分:0)
$(document).ready(function(){
$('div.container').on('mousemove',function(e){
var x = e.pageX - this.offsetLeft;
$('div.box').css({'right': x});
});
});
检查此链接正常工作......
答案 3 :(得分:0)
wc -l
///////// CSS
$('#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});
});