为简单起见而更新: http://jsfiddle.net/vJVcf/5/
///
(悬停在段落上时会发生动画)
我不知道是什么导致这种情况,但我已将差异缩小到位置()。左;值 - 由于某些原因,webkit和firefox完全不同地解释它。
var $plugin = jQuery.sub();
$plugin.fn.animate = function(props, speed, cb) {
if (typeof(speed) == "function") cb = speed, speed = 500;
if (typeof(cb) != "function") cb = function() {};
return $.each(this, function(i, el) {
el = $(el);
if (props.float && props.float != el.css("float")) {
var elem = el.clone().insertBefore(el).addClass('killme'),
temp = el.position().left;
el.css('position', 'absolute');
props.marginLeft = 0;
props.left = 0;
el.css({
marginLeft: temp
});
}
$(this).animate(props, speed, function() {
$(this).css(props);
cb();
el.css({
marginLeft: -100,
position: "relative",
display: "block",
clear: "both"
});
});
});
};
答案 0 :(得分:0)
我想我得到你想要的东西,但你的jQuery看起来不必要地复杂......用这个代替它怎么样? (例如http://jsfiddle.net/tcloninger/uGNzA/)
$(document).ready( function(){
$('.eula_animate').each( function(){
$(this)
.clone()
.prependTo(this)
.addClass('move_me')
.css({'left': $(this).offset().left });
});
$('p').hover( function(){
$('.move_me').show().animate({'left':20},2000);
});
});
...哦是的,并添加这个CSS:.move_me{ display:none; position:absolute; color:red; }