2011-08-18 132 views
0

我有一個非常基本的功能,我使用jQuery將某些內容(從左到右)或返回(從右到左)滑動。下面的代碼工作,但是,我現在要做的是在我的「overDiv」結尾包含「+」,並使其始終顯示。爲了繪製更清晰的圖片,現在如果您將該代碼粘貼到您的編輯器中幷包含Google的jQuery,您將看到單擊「+」可完全消除「overDiv」塊。但是,我想要做的是在「overDiv」塊的末尾放置「+」,這樣當文本從頁面消失時,+就會一直保留下來。希望這是有道理的?jQuery Animate問題

在此先感謝。

<body> 

<script language="javascript" type="text/javascript"> 
$(function() { 
    // when we click on the a-href id 'togglen', we move the overDiv to the left. 
$('#togglen').click(function() { 
    // simple animation       
    $('#overDiv').animate({ 
     left: parseInt($('#overDiv').css('left'),10) == 0 ? -$('#overDiv').outerWidth() : 0 
    }); 
    }); // 
}); 


</script> 
<div><a href="#" id="togglen">+</a></div> 
<div style="background-color:#CCC; width:180px; position:absolute; left:0; overflow:hidden; float:left;" id="overDiv">Lorem ipsum.</div> 

回答

0

http://jsfiddle.net/KmmbK/我把你的代碼粘貼到jsfiddle中。看起來'+'總是保持不變。你想要消失的div內的'+'嗎?如果這樣簡單地從距離div減去'+'的寬度,則動畫關閉屏幕。

+0

http://jsfiddle.net/S5RFT/例如,我估計'+'在10px的寬度 – Fresheyeball

+0

這正是我在尋找。感謝所有回答的人。謝謝,Fresheyeball ..真的很感激它。 –

0

只需添加類似style="position:absolute; left:190px"你+。

如果您想要+「粘」到「overDiv」你可以在其他動畫前加

$('#togglen').animate({ 
     left: parseInt($('#overDiv').css('left'),10) == 0 ? 0 : $('#overDiv').outerWidth() 
    }); 

http://jsfiddle.net/PQxkc/

+0

即使這不是做正確的方式。 – ShankarSangoli

0

在這裏看到:http://jsfiddle.net/yVReu/

您還需要定位你的 「+」 元素。

+0

這不是正確的方法 – ShankarSangoli

+0

嘿保羅,有沒有什麼辦法可以在「+」點擊「+」在0px級別? –

+0

@ShankarSangoli - 爲什麼不呢?它絕對定位。 – Paul

1

設置與+滑動divrelativefloatleftdivposition。這種方式有任何價值在div沒有硬編碼與+

工作demo