?
這個教程和 以前經典出現的平滑滾動原理 完全不同 絕非抄襲 功能也有區別
flash演示+教程:
[url=http://www.blueidea.com/articleimg/2004/06/1950/show.html]
http://www.blueidea.com/articleimg/2004/06/1950/show.html
[/url]
FLA源代碼下載:
[url=http://www.blueidea.com/articleimg/2004/06/1950/feng4ever_scroll.fla]
http://www.blueidea.com/articleimg/2004/06/1950/feng4ever_scroll.fla
[/url]
簡單介紹 :


詳細介紹 :
第一幀action
show_scroll.onPress=function(){scroll_lock= "no"} //滾動條被按下鎖被打開
show_scroll.onRelease=function(){scroll_lock= "yes"} //滾動條被放松鎖被關閉
show_scrollbg.onPress=function(){scroll_lock= "no"} //滾動條空白區域被點擊鎖被打開
show_scrollbg.onMouseUp=function(){scroll_lock="yes"} //鼠標提升 鎖被關閉 (這里是有原因的 當你鼠標按下 放開的時候不是在滾動條背景 scrollbg的時候鎖就永遠不會關閉,整個圖片將一直隨著鼠標緩緩飄逸于你的顯示器上)
第二幀
if (scroll_lock=="no"){
show_scroll._y+=(_ymouse-show_scroll._y-15)/2
}
show_image._y+=(-(show_image._height-300)*(show_scroll._y*
300/270)/300-show_image._y)/20
更一般性的
if (scroll_lock=="no") {
?? show_scroll._y+=(_ymouse-show_scroll._y-[滾動條長度的一半])/
[滾動條緩沖常數,這里不要設置太大 以免 鼠標下來了 滾動條還在上面]
}
show_image._y+=(-(show_image._height-[滾動顯示區域的高度])*
(show_scroll._y*/[滾動顯示區域的高度-滾動條高度])-show_image._y)/
[被滾動影片緩沖常數,這里不要設置太大 以免 鼠標下來了 滾動條還在上面]
下面先講 按住滾動條滾動
當沒上鎖的時候 也就是 滾動條scroll或者背景scrollbg 被按下的時候
show_scroll._y 也就是滾動條的垂直位置緩沖移動到鼠標當前位置的 上15個象素
然后被滾動影片 以緩沖 移動到 一個指定位置
主要的地方來了: 等我吃個茶葉蛋 打個屁 繼續
show_image._height-300 意思就是_ymouse-show_scroll._y-[滾動條長度的一半]
show_image 被移動的最大范圍 然后下面就是要讓 show_image滾動到的位置 所占 總滾動位置的比例 和 滾動條移動到的 y占總移動范圍的比例一樣
所以有了 show_image+=([極限位置]-show_image._y)/20 這個是緩沖的算法 向極限 每次循環以當前距離的 1/20靠近
[極限位置] =-(show_image._height-300)*(show_scroll._y*300/270)/300
(show_scroll._y*300/270)/300 是 滾動條的 _y 占滾動范圍的比例
(
為什么 要 有 *300/270)/300 為什么不直接 /270 ??? 問得很好,這是因為我寫錯了
)
然后 用 show_image._height-300 乘 (show_scroll._y/270) 就得到 show_image 占總滾動比例于 滾動條占滾動總范圍的 比例一樣的 _y的值 前面加"-"號 是要達到 滾動條向下 被滾動mc向上的效果
然后說 當你點擊 滾動條 可移動范圍空白區域 的時候的情況
這個時候 鎖打開 得到 鼠標當前位置
滾動條馬上緩沖移動到這個位置
然后 相當于拖動滾動條移動一樣 向下執行步驟

本文轉自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/232.html
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
