原生javascript實現圖片輪播效果代碼

來源:互聯網
上載者:User

看到BlueDream在他部落格上寫的javascript仿QQ滑動菜單的效果,代碼實在是優雅,相比較差別一下就凸顯了,下次再把他代碼的精髓偷過來,嘿嘿。
【原理簡述】
html和css跟JQuery實現圖片輪播效果裡面的一樣,略去。主要是幾個公用函數,漸顯和漸失,用閉包實現。至於主體邏輯部分,非常一般。
【程式源碼】
貼幾個公用函數算了,fadeIn,漸顯,fadeOut,漸失 複製代碼 代碼如下:function id(name) {return document.getElementById(name);}
//遍曆函數
function each(arr, callback) {
if (arr.forEach) {arr.forEach(callback);}
else {
for (var i = 0, len = arr.length; i < len; i++) callback.call(this, arr[i], i, arr);}
}
function fadeIn(elem) {
setOpacity(elem, 0)
for ( var i = 0; i < 20; i++) {
(function() {
var pos = i * 5;
setTimeout(function() {
setOpacity(elem, pos)
}, i * 25);
})(i);
}
}
function fadeOut(elem) {
for ( var i = 0; i <= 20; i++) {
(function() {
var pos = 100 - i * 5;
setTimeout(function() {
setOpacity(elem, pos)
}, i * 25);
})(i);
}
}
// 設定透明度
function setOpacity(elem, level) {
if (elem.filters) {
elem.style.filter = "alpha(opacity=" + level + ")";
} else {
elem.style.opacity = level / 100;
}
}

【調用方法】
//count:圖片數量,wrapId:包裹圖片的DIV,ulId:按鈕DIV,infoId:資訊列
babyzone.scroll(count,wrapId,ulId,infoId);
babyzone.scroll(4,"banner_list","list","banner_info");
【源碼下載】
/201009/yuanma/scroll_babyzone.rar

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.