Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 监视器显示设置的边距动画问题_Jquery_Css_Screen - Fatal编程技术网

Jquery 监视器显示设置的边距动画问题

Jquery 监视器显示设置的边距动画问题,jquery,css,screen,Jquery,Css,Screen,我对网页上的动画有问题。我有一个div,里面有文本,我使用css设置边距,当加载页面时,我使用jquery将div动画化到页面的某个部分。问题是,它适用于我的具体像素设置,但如果我以屏幕分辨率(像素)更改监视器显示设置的属性,div不会动画到适当的点,甚至不会从css的适当点开始 示例代码: #div{ position:absolute; top:20px; left:50px } $("#div").animate({marginLeft: "250px"},2000); 无论屏幕分辨率

我对网页上的动画有问题。我有一个div,里面有文本,我使用css设置边距,当加载页面时,我使用jquery将div动画化到页面的某个部分。问题是,它适用于我的具体像素设置,但如果我以屏幕分辨率(像素)更改监视器显示设置的属性,div不会动画到适当的点,甚至不会从css的适当点开始

示例代码:

#div{
position:absolute;
top:20px;
left:50px
}

$("#div").animate({marginLeft: "250px"},2000);

无论屏幕分辨率如何,是否有办法使动画边距的设置在适当的位置结束?

您正在设置
边距左侧
属性的动画,而不是设置
左侧
位置属性的动画。我的猜测是,如果你换成那样,你会得到你想要的结果


另外,您可能希望为
#div
指定一个宽度,因为大多数情况下绝对定位元素使用宽度时效果更好。

您正在设置
左边距
属性的动画,而不是
左边距
位置属性的动画。我的猜测是,如果你换成那样,你会得到你想要的结果


另外,您可能希望为您的
#div
指定一个宽度,因为绝大多数情况下,绝对定位元素使用宽度时效果更好。

我找到了一个解决方案,不确定该解决方案是最佳做法还是明智做法。基本上,我所做的是为所有不同的屏幕分辨率设置设置一个if条件,每个条件都有自己的参数。例:

if(screen.width==1600&& screen.height==960)
{
   $("#div").animate({marginLeft: "350px"},2000);
}
if(screen.width==1250&& screen.height==7500)
{
   $("#div").animate({marginLeft: "570px"},2000);
}
etc..

我找到了一个解决方案,不确定这个解决方案是最佳实践还是明智的。基本上,我所做的是为所有不同的屏幕分辨率设置设置一个if条件,每个条件都有自己的参数。例:

if(screen.width==1600&& screen.height==960)
{
   $("#div").animate({marginLeft: "350px"},2000);
}
if(screen.width==1250&& screen.height==7500)
{
   $("#div").animate({marginLeft: "570px"},2000);
}
etc..
尝试使用
$(窗口).height()
$(窗口).width()
尝试使用
$(窗口).height()
$(窗口).width()