Javascript 检测正在移动的DOM中元素的位置
我一直试图找到一个有效的例子,但我认为我缺少一些非常基本的东西。我有一个函数来移动一个相对元素的位置,我想在左元素超过300px时停止元素的移动。我正在使用此代码移动元素:Javascript 检测正在移动的DOM中元素的位置,javascript,jquery,css,Javascript,Jquery,Css,我一直试图找到一个有效的例子,但我认为我缺少一些非常基本的东西。我有一个函数来移动一个相对元素的位置,我想在左元素超过300px时停止元素的移动。我正在使用此代码移动元素: function tele_right(){ $(".tele-wrapper").animate({"left": "+=15px"}, 25); } 我想使用类似这样的代码在DOM中执行一次操作,左侧位置达到300: if($('.tele-wrapper').css('left') == '300px') {
function tele_right(){
$(".tele-wrapper").animate({"left": "+=15px"}, 25);
}
我想使用类似这样的代码在DOM中执行一次操作,左侧位置达到300:
if($('.tele-wrapper').css('left') == '300px') {
console.log('yay');
}
非常感谢您的帮助。如果我是您,我只需将元素的left属性设置为0,然后将动画一直设置为300px,并将其持续时间定义为所需的值,如下所示: $document.readyfunction{ $.tele wrapper.animate{left:300px},1000; //1000ms=1秒,设置为任意值 }; .电传包装机{ 位置:相对位置; 左:0 }
tele wrapper您只需使用偏移量和设置超时即可实现这一点:
谢谢分享。
function tele_right(){
var left=$(".tele-wrapper").offset().left;
if(left<300){
$(".tele-wrapper").animate({"left": "+=15px"}, 25);
setTimeout(tele_right,25);
}
else{
alert('passed 300 pixels');
}
}
tele_right();