我正在寫一些代碼,使div滑動到頁面的左側或右側,具體取決於某些按鍵(左或右箭頭)。這是我的腳本。jquery滑動div只能工作一次
$(document).keydown(function(e){
var $inner = $('.inner-cover');
if (e.keyCode == 39) {
$inner.css({
position: 'fixed',
top: $inner.offset().top,
left: $inner.offset().left
}).animate({left:'100%'}, 1000);
}
if (e.keyCode == 37){
$inner.css({
position: 'fixed',
top: $inner.offset().top,
right: $inner.offset().right
}).animate({right:'100%'}, 1000);
}
});
這裏是它在jsfiddle中的鏈接。 http://jsfiddle.net/e32A3/
我有幾個關於它的問題,我真的很想回答,因爲我似乎沒有正確理解這一點。
爲什麼滑動功能只能使用一次或兩次?
爲什麼我需要把
$inner.css({}).animate({left:'100%'},1000);
我試圖
$inner.animate({left:100%},1000);
,並沒有奏效
此外,我怎麼會阻止它的中心?我想我必須做的事情沿線
animate({left:($(window).width()-$inner.width())/2)},1000);
但我再次嘗試過,它沒有工作。
,因爲'position'應該設置爲'fixed'或'absolute'或'relative'以使'left'生效。 –
也注意到'offset()'返回一個沒有'right'或'bottom'屬性的對象,它只有'left'和'top'。 –