jQuery animate left decrement var value在chrome上返回0,即
Posted
技术标签:
【中文标题】jQuery animate left decrement var value在chrome上返回0,即【英文标题】:jQuery animate left decrement var value returns 0 on chrome and ie 【发布时间】:2016-07-10 18:41:44 【问题描述】:在开发此网页时,我遇到了这个问题:
http://gfn.gfn.pt/
每当触发以下函数而不是将我的窗口宽度返回到左侧时,它都会为每个 .efect 元素返回 0。
function slideFoward(speedB)
var windowW = $(window).width();
var d=0;
$('.efect').each(function()
$(this).delay(d).animate(
'left':'-='+windowW,
'right':'+='+windowW
,speedB);
d=d+50;
);
这只发生在 chrome 上,即和 safari。在 Firefox 中它的角色就好了。
我对此进行了很多研究,但没有答案。如果有人知道为什么会发生这种情况,请提供帮助。 谢谢VM
【问题讨论】:
【参考方案1】:通过一些解决方法解决了它:
我没有使用 -= 减量运算符,而是将窗口宽度减去 element.offset().left
function slideFoward(speedB)
var windowW = $(window).width();
var d=0;
$('.efect').each(function()
var leftP=windowW-$(this).offset().left;
$(this).delay(d).animate(
'right':'+='+windowW,
'left':''-leftP
,speedB);
d=d+50;
);
【讨论】:
以上是关于jQuery animate left decrement var value在chrome上返回0,即的主要内容,如果未能解决你的问题,请参考以下文章
jquery 的 animate(left:1000px,1000);和animate(marginLeft:1000px,1000);有啥区别呢?