成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

中文前端UI框架Kit:超酷的瀑布流特效動畫

開發 前端
首先core需要引用kit.js,IE下通過條件注釋引入ieFix.js,其他需要引入,array.js 數組擴展(可以不引用),anim.js 動畫擴展即可。

Demo地址:http://xueduany.github.com/KitJs/KitJs/demo/Waterfall/demo.html

image

(一)KitJs瀑布流組件特點

1. 瀑布流形式呈現圖片加載,鼠標滾動到底加載新的數據

2. 瀑布條數隨窗口大小改變而改變,支持任意縮放窗口

(二)使用方法

core需要引用kit.js,IE下通過條件注釋引入ieFix.js

其他需要引入

array.js 數組擴展(可以不引用)

anim.js 動畫擴展即可,

至于demo中的semitransparentloading.js是用來做半透明loading的,io.js是用來跨域取圖片數據的,這個load方法可以自定義

最簡單的加載方式,比如

  1. var currentPage = 1;  
  2.     var waterfall = new $kit.ui.Waterfall({  
  3.         container : $kit.el('.kitjs-waterfall-container')[0],  
  4.         load : function(success, end) {  
  5.             //$('#loadingPins').show();  
  6.             $kit.io.josnp({  
  7.                 url : 'http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=5d93c2e473e39e9307e86d4a01381266&tags=rose&page=' + currentPage + '&per_page=20&format=json&_ksTS=1339665079110_92&jsoncallback=dealWithJSONPData',  
  8.                 onSuccess : function() {  
  9.                     currentPage = window.loadedData.photos.page + 1;  
  10.                     //alert(window.loadedData.photos.photo.length);  
  11.                     var items = [];  
  12.                     $kit.each(window.loadedData.photos.photo, function(item) {  
  13.                         item.height = Math.round(Math.random() * (300 - 180) + 180);  
  14.                         // fake height  
  15.                         items.push($kit.newHTML($kit.tpl(['<div class="kitjs-waterfall" data-id="${id}">'//  
  16.                         '<a href="http://farm/${farm}.static.flickr.com/${server}/${id}_${secret}_m.jpg" class="image" target="_blank">', //  
  17.                         '<img height="${height}" alt="${title}" src="http://farm/${farm}.static.flickr.com/${server}/${id}_${secret}_m.jpg"/>', //  
  18.                         '</a>'//  
  19.                         '<p class="description">${title}</p>'//  
  20.                         '</div>'//  
  21.                         ].join(''), item)).childNodes[0]);  
  22.                     });  
  23.                     success(items);  
  24.                     window.timeoutLoading = setTimeout(function() {  
  25.                         if(window.loading) {  
  26.                             window.loading.destory();  
  27.                             window.loading = null;  
  28.                         }  
  29.                     }, 600)  
  30.                 }  
  31.             })  
  32.         },  
  33.         minColCount : 2,  
  34.         colWidth : 228  
  35.       });  
  36.     waterfall.ev({  
  37.         ev : 'loadData',  
  38.         fn : function() {  
  39.             if(window.timeoutLoading) {  
  40.                 clearTimeout(window.timeoutLoading);  
  41.                 window.timeoutLoading = null;  
  42.             }  
  43.             if(window.loading == null) {  
  44.                 window.loading = new $kit.ui.SemitransparentLoading();  
  45.             }  
  46.         }  
  47.     });  
  48.     waterfall.ev({  
  49.         ev : 'resizeBegin',  
  50.         fn : function() {  
  51.             if(window.timeoutLoading) {  
  52.                 clearTimeout(window.timeoutLoading);  
  53.                 window.timeoutLoading = null;  
  54.             }  
  55.             if(window.loading == null) {  
  56.                 window.loading = new $kit.ui.SemitransparentLoading();  
  57.             }  
  58.         }  
  59.     });  
  60.     waterfall.ev({  
  61.         ev : 'resizeEnd',  
  62.         fn : function() {  
  63.             window.timeoutLoading = setTimeout(function() {  
  64.                 if(window.loading) {  
  65.                     window.loading.destory();  
  66.                     window.loading = null;  
  67.                 }  
  68.             }, 600)  
  69.         }  
  70.     });  
  71.  

指定一個容器,一個加載數據的方法,最小瀑布列數,瀑布寬度(這個是固定的)

在加載方法里面,初始化單個圖片容器的Dom節點,需要顯示指明節點高度,將height,domNode放入一個數組中,調用load方法的回調參數succes

(三)自定義事件

目前支持三個自定義事件,load觸發之前會有一個load事件,還有縮放窗口的時候,有resizeBegin和resizeEnd事件,可以用來做loading動畫。

經過幾個月的努力,現在kit已經有了完整的底層以及基礎UI控件體系,包括

1. 完整的dom api

2. 強化的anim動畫類,支持所有的Css動畫,包括Css3以及IE Hacker

3. 平衡了IE與W3C的range對象了,完美兼容了W3C的所有的api,實現了跨瀏覽器的bookmark同步

4. 完整的OO體系,屬性getter,setter,對象繼承,單例,模塊

5. 強大的模板系統,支持循環,if else條件判斷

6. 齊全的瀏覽器偵測,手持設備,PC等等

7. 基礎的UI體系,可以支持復雜的頁面組件

包括不限于,蒙版,浮動層,對話框,拖拽,高級自定義增強事件,增強動畫,日歷,表單,驗證,瀑布流...

8. 基礎的log,安全沙箱,打包工具,自動化腳本等。

原文鏈接:http://www.cnblogs.com/xueduanyang/archive/2012/06/15/2550062.html

【編輯推薦】

  1. 中文前端UI框架Kit:搖頭動畫
  2. JavaScript圖片變換效果(IE only)
  3. JavaScript提升網頁加載速度
  4. JavaScript馬賽克遮罩圖片幻燈片切換類
  5. 看JavaScript如何實現頁面自適
責任編輯:張偉 來源: 薛端陽的博客
相關推薦

2012-06-14 17:06:38

JavaScript

2024-09-03 17:04:15

前端算法布局

2012-03-28 09:49:55

WEB特效

2022-07-27 10:36:13

前端UI框架

2019-01-31 11:11:30

前端開發框架

2022-07-08 09:55:54

CSS轉場動畫

2015-02-26 18:09:29

WaterFall V瀑布流Dynamic Gri

2012-05-02 13:53:00

JavaScript

2024-08-19 14:01:00

2014-06-27 09:47:48

Bootstrap

2025-05-13 02:01:00

Three.jsSprite粒子

2014-07-28 16:05:42

云適配

2022-08-01 12:53:30

前端動畫

2021-02-23 15:24:51

騰訊組件開源

2017-03-13 13:32:39

LinuxVim技巧

2015-12-07 10:00:13

HTML5Loading動畫

2013-04-03 15:45:51

Android瀑布流android_wat

2022-06-09 10:27:40

前端框架開源

2013-10-24 10:40:23

前端框架

2023-02-20 08:41:08

SignaluseState()
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美高清成人 | 亚洲一区二区精品视频在线观看 | 国产欧美精品区一区二区三区 | 亚洲欧美激情四射 | 久久午夜视频 | 色妞av| 精品一区二区三区在线观看国产 | 精品一区二区久久久久久久网站 | 亚洲视频1区 | 亚洲精品一区二三区不卡 | 国产精品av久久久久久久久久 | 日韩欧美国产精品 | 九色av| 一区二区三区在线免费观看 | 国产九九九 | 成人亚洲精品 | 久久精品亚洲精品国产欧美 | 成人欧美在线 | 福利视频网址 | 99re视频这里只有精品 | 欧美1页 | 亚洲欧美激情精品一区二区 | 国产精品影视在线观看 | 先锋资源在线 | 亚洲精品成人网 | 成人午夜精品 | 在线中文字幕av | 日韩久久久久久 | 免费观看黄网站 | 国产一区二区三区在线视频 | 一区二区三区四区不卡视频 | 视频在线一区二区 | 午夜一区二区三区在线观看 | 欧美精品一区二区在线观看 | 亚洲性网 | 日韩欧美亚洲一区 | 精品一区电影 | 91精品国产综合久久久久久首页 | 九九热在线免费视频 | 日韩av一区二区在线观看 | 中文字幕精品视频在线观看 |