Javascript jquery从中间到最左边或最右边设置动画(基于文档宽度的屏幕外)

Javascript jquery从中间到最左边或最右边设置动画(基于文档宽度的屏幕外),javascript,jquery,jquery-animate,Javascript,Jquery,Jquery Animate,我有一个固定宽度的元素,我想基本上从屏幕上向左或向右拍摄,我想通过使用动画来直观地看到它。然而,我目前的尝试并没有按计划进行 它现在似乎在做的是跳到屏幕的另一侧,然后朝我想要的方向平移。然而,我希望它做的是从它所在的位置穿过屏幕 $('.element').animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#dashboardWidgetContainer').hide().html('')}); 这就是

我有一个固定宽度的元素,我想基本上从屏幕上向左或向右拍摄,我想通过使用动画来直观地看到它。然而,我目前的尝试并没有按计划进行

它现在似乎在做的是跳到屏幕的另一侧,然后朝我想要的方向平移。然而,我希望它做的是从它所在的位置穿过屏幕

$('.element').animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#dashboardWidgetContainer').hide().html('')});
这就是我试图用它来实现我想要的目标

布局示例如下:

<div id="container">
     <div class="element"></div>
</div>

首先将其设置为固定位置

去:


首先将其设置为固定位置

去:


您是否正在尝试实现以下目标:


您是否正试图实现以下目标:


如果它在屏幕上跳跃,可能与边距从“自动”更改为0有关,如本例所示:

在设置动画之前,请确保将marginLeft设置为当前位置:

$('#element').css('marginLeft', $('#element').position().left).animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#container').hide().html('')});    


正如jdavies指出的那样(删除后?),您的脚本运行良好,您可能需要将dashboardWidgetContainer更改为现有元素的选择器。您应该注意的一点是,如果您不打算将元素重新插入页面,您应该将.hide().html(“”)替换为.remove(),因为从DOM中完全删除元素要比将其放在那里显示更干净:none;没有内容

$('#element').css('marginLeft', $('#element').position().left).animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#container').remove()});    

如果它在屏幕上跳跃,则可能与边距从“自动”更改为0有关,如本例所示:

在设置动画之前,请确保将marginLeft设置为当前位置:

$('#element').css('marginLeft', $('#element').position().left).animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#container').hide().html('')});    


正如jdavies指出的那样(删除后?),您的脚本运行良好,您可能需要将dashboardWidgetContainer更改为现有元素的选择器。您应该注意的一点是,如果您不打算将元素重新插入页面,您应该将.hide().html(“”)替换为.remove(),因为从DOM中完全删除元素要比将其放在那里显示更干净:none;没有内容

$('#element').css('marginLeft', $('#element').position().left).animate({'marginLeft':($(document).width())+'px'},1000, function(){$('#container').remove()});    

正如jdavies指出的那样,您的脚本运行良好,您可能需要将
仪表板widgetcontainer
更改为现有元素的选择器。需要注意的一点是,如果不打算将元素重新插入页面,则应将
.hide()和无内容。正如jdavies指出的,您的脚本工作正常,您可能需要将
仪表板WidgetContainer
更改为现有元素的选择器。需要注意的一点是,如果不打算将元素重新插入页面,则应将
.hide()并且没有内容。