2012-05-03 101 views
0

來控制被蒙版的滾動條我有一些問題。我想創建這樣的東西,但垂直而不是水平。 我也想通過點擊向上/向下按鈕而不是滾動來控制滑塊。如何通過點擊

參考:http://active.tutsplus.com/tutorials/effects/create-a-responsive-xml-image-scroller-in-actionscript-3-0/

現在我有對我的笨手笨腳的容器MC和麪具掩蓋該容器。我也有我的按鈕,將觸發此向上滾動/向下滾動功能 。

我不知道如何編寫該函數。我已經完成了容器間的上下調整,但是我需要一個限制 ,因此它需要補間並遠離界限。

有什麼建議嗎?

回答

0

首先,爲了防止蒙版與內容一起移動,請確保它與您的內容位於同一層。

例如:

myContainer ¬ 
    - contentBox 
    - maskShape 

而且contentBox.mask = maskShape

對於滾動,只需按一下導航按鈕即可增加或減少contentBox的位置。

在向下按鈕的情況下,你的事件監聽器你會做這樣的事情......

contentBox.y = contentBox.y + 25; 

當然我們希望這個平穩地滑動了,所以在​​的情況下..

TweenLite.to(contentBox, 0.5, {y:contentBox.y + 25}); 

「向上」按鈕與此相反。

+0

謝謝!這似乎是要走的路,而且我現在到目前爲止。現在我只是不知道如何防止contentBox補間到很遠,所以它補間不見了。有沒有一個很好的方法來檢查? – user987387

+0

絕對。我建議三元操作(http://en.wikipedia.org/wiki/Ternary_operation)。假設你的contentBox是200px,並且你的maskShape是100px,並且你不想滾過底部,你會這樣做: 'contentBox.y =(contentBox.y - 25 <= -100 )? -100:contentBox.y - 25;' 基本上,我們說「如果移動框的結果超出我們的最大位置,將其設置爲最大值,否則使用計算。當然,你可以在if/else語句中輸入它,但是可以漂浮在你的船上。 ;) – Atriace