2011-08-31 32 views

回答

3

CSS轉換是爲了這樣的事情!有關您要查找的內容的示例,請參見http://jsfiddle.net/Fw7MQ/(「手柄」會更改背景顏色,但您可以輕鬆地將該背景圖像改爲此圖像)

CSS的關鍵部分是;

#drawer { 
    position: relative; 
    left: -200px; 
    /* transition is repeated for all supporting browsers */ 
    -webkit-transition: left 0.5s ease-in-out; 
    -moz-transition: left 0.5s ease-in-out; 
    -o-transition: left 0.5s ease-in-out; 
    -ms-transition: left 0.5s ease-in-out; 
    transition: left 0.5s ease-in-out; 
} 
#drawer.open { 
    left: 0; 
} 

'抽屜'有一個類名稱根據需要添加或刪除使用這個小javascript腳本;

Event.observe('handle', 'click', Element.toggleClassName.curry('drawer', 'open')) 

...但你可以免去甚至認爲,如果動畫是在鼠標懸停做,而不是 - CSS選擇器改變從#drawer.open#drawer:hover

對於較老的瀏覽器,它優雅地降級,動畫不播放,但抽屜仍然出現在正確的位置。

+0

不理解..這個腳本不能正常工作:S :( –

+0

它不起作用?並且這個問題僅限於一個瀏覽器? – clockworkgeek

+0

Ooops,對不起,我沒有注意到,這隻適用於新的brawsers。但我的用戶使用soem舊brawser並不想升級他們,所以我需要更好的解決方案:( –