jQuery .animate 走错了方向,为什么
jQuery .animate goes wrong direction why?
这是我的CSS:
.animate-rectangle {
background-color:#0F0;
border: 1px solid #FFF;
float:left;
position:absolute;
width:100px;
height:100px;
}
和jQuery代码:
<!--Jquery Code to Animate Rectangle from Left to Right-->
$(document).ready(function () {
var windo_width = $(document).width() - 300;
$("#reset").click(function () {
$(".animate-rectangle").animate({
"left": "100px"
}, "slow");
});
$("#MoveRight").click(function () {
$(".animate-rectangle").animate({
"left": "+=" + windo_width
}, "slow");
});
});
看看jQuery代码,它声明了animate({"left":"100px"}
,但在行动中,它是正确的为什么会发生这种情况?
在查看css
时,您最初没有为元素分配left
。因此,默认情况下,它将left
视为0
。所以现在你试图animate
左到100
,显然你的元素会向右移动,以便从0 to 100
移动。尝试为元素设置初始左位置。
*** ------> ***
*** ***
| |
| |
left : 0 left: 100
首先,.animate-rectangle
的left
位置将是 0
,或者它最接近的相对父级的left
值。动画将其向右移动,因为值 100
大于其原点。如果要将其相对于开始位置向右移动100px
,请使用+=100px
:
$("#reset").click(function () {
$(".animate-rectangle").animate({
"left": "+=100px"
}, "slow");
});
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 为什么“;未定义的“;在JavaScript中结束循环
- ng映射方向备选方案
- 为什么这在IE中的工作方式与在Firefox中不同
- 知道为什么我的旋转木马不会自动更改图片吗
- 为什么会出现错误;未捕获的类型错误:undefined不是函数;
- 为什么在单独的函数中应用时转换会闪烁/断断续续(D3)
- 为什么在变形之前不缺少Fx
- 为什么JavaScript在for循环为3时向所有4发出警报
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- 为什么Airbnb风格指南说不鼓励依赖函数名称推断
- 为什么要使用0>javascript中的0
- 为什么无法在TypeScript中导出类实例
- 为什么grunt contrib connect的中间件选项的第三个参数是未定义的
- 为什么包含警报模式会影响CSS的旋转方向
- jQuery .animate 走错了方向,为什么
- 为什么window.innerHeight在水平方向时返回180
- 为什么mapbox方向不支持JSONP ?如何解决它
- 为什么我不能通过调用setMap(null)来删除方向?
- 为什么我的谷歌地图API Ver3不允许我显示标记,但它会在方向上呈现标记