`

Waterfall 瀑布流的实际应用-kipling项目

阅读更多

http://docs.kissyui.com/docs/html/demo/component/waterfall/effect.html#waterfall-demo-effect

 

KISSY.use("waterfall,ajax,gallery/template/1.0/,node", function (S, Waterfall, io, Template, Node) {
    var $ = Node.all;

    var tpl = Template($('#tpl').html()),
        nextpage = 1,
        waterfall = new Waterfall.Loader({
            container:"#ColumnContainer",
            // 窗口大小变化时的调整特效
            adjustEffect:{
                duration:0.5,
                easing:"easeInStrong"
            },
            load:function (success, end) {
                $('#loadingPins').show();
                S.IO({
                    data:{
                        'method':'flickr.photos.search',
                        'api_key':'5d93c2e473e39e9307e86d4a01381266',
                        'tags':'rose',
                        'page':nextpage,
                        'per_page':20,
                        'format':'json'
                    },
                    url:'http://api.flickr.com/services/rest/',
                    dataType:"jsonp",
                    jsonp:"jsoncallback",
                    success:function (d) {
                        // 如果数据错误, 则立即结束
                        if (d['stat'] !== 'ok') {
                            alert('load data error!');
                            end();
                            return;
                        }
                        // 如果到最后一页了, 也结束加载
                        nextpage = d['photos'].page + 1;
                        if (nextpage > d['photos'].pages) {
                            end();
                            return;
                        }
                        // 拼装每页数据
                        var items = [];
                        S.each(d['photos']['photo'], function (item) {
                            item.height = Math.round(Math.random() * (300 - 180) + 180); // fake height
                            items.push(new S.Node(tpl.render(item)));
                        });
                        success(items);
                    },
                    complete:function () {
                        $('#loadingPins').hide();
                    }
                });
            },
            minColCount:2,
            colWidth:228
        });

    // scrollTo
    $('#BackToTop').on('click', function (e) {
        e.halt();
        e.preventDefault();
        $(window).stop();
        $(window).animate({
            scrollTop:0
        }, 1, "easeOut");
    });

    $("#ColumnContainer").delegate("click", ".del", function (event) {
        var w = $(event.currentTarget).parent(".ks-waterfall");
        waterfall.removeItem(w, {
            effect:{
                easing:"easeInStrong",
                duration:0.1
            },
            callback:function () {
                alert("删除完毕");
            }
        });
    });


    $("#ColumnContainer").delegate("click", ".grow", function (event) {
        var w = $(event.currentTarget).parent(".ks-waterfall");
        waterfall.adjustItem(w, {
            effect:{
                easing:"easeInStrong",
                duration:0.1
            },
            process:function () {
                w.append("<p>i grow height by 100</p>");
            },
            callback:function () {
                alert("调整完毕");
            }
        });
    });
});

 

 

 

项目实例:http://adsite3.rayli.com.cn/mini/kipling/list.html

分享到:
评论

相关推荐

    vue瀑布流组件(vue-waterfall-easy 2.x)

    vue瀑布流组件(vue-waterfall-easy 2.x) 这是一个vue组件,包含瀑布流布局和无限滚动加载 与其他实现相比,无需在返回的数据中指定图像的宽度和高度 正是因为有了第二项,图像才被预加载,然后进行布局 响应式...

    waterfall瀑布流.rar

    8. **数据获取和异步加载**:在实际应用中,瀑布流布局的数据通常来自服务器。通过Ajax异步请求获取数据,然后动态插入DOM,可以实现无限滚动的效果,即用户滚动到底部时自动加载更多内容。 掌握以上知识点,你就能...

    瀑布图片waterfall----简单案例 .Net

    这份"waterfall----简单案例 .Net"压缩包文件很可能包含了一个示例项目,用于演示如何在.Net环境下构建瀑布流图片展示系统。 瀑布流布局的关键在于响应式设计,即页面能够根据浏览器窗口的大小自动调整布局。在.Net...

    Android waterfall瀑布流-IT计算机-毕业设计.zip

    瀑布流布局,又称瀑布式加载或Infinite Scroll,是一种在Android平台上常见的用于展示大量数据的布局方式,尤其在图片浏览、电商应用等场景下广泛应用。本项目是一个Android应用源码Demo,适合计算机专业的学生作为...

    vuewaterfall瀑布流插件自适应PC移动端无需预设置高度

    1. 首先,通过npm或yarn将插件添加到项目依赖中:`npm install vue-waterfall-plugin --save` 或 `yarn add vue-waterfall-plugin` 2. 在Vue项目的入口文件(如main.js)中引入并注册插件:`import VueWaterfall ...

    Vue.js下的瀑布流组件vue-waterfall.zip

    Vue.js 下的瀑布流组件。ES5、ES6、UMD 兼容。享受数据驱动带来的便利,让事情变得简单。 标签:vuewaterfall

    Android高级应用源码-waterfall瀑布流.zip

    在Android开发领域,"waterfall瀑布流"是一种常见的布局方式,尤其在展示各种尺寸的图片或者内容时,如社交媒体、电商...通过研究这个源码,开发者可以深入理解瀑布流布局的工作原理,以及如何在实际项目中灵活应用。

    Android高级应用源码-waterfall瀑布流.rar

    综上所述,"Android高级应用源码-waterfall瀑布流"项目涵盖了Android自定义布局、数据加载、图片处理、响应式布局、滚动监听等多个核心知识点,是学习Android高级开发和实践瀑布流布局的好资料。通过分析和研究这个...

    安卓瀑布流相关-waterfall瀑布流.zip

    瀑布流布局,也称为瀑布流式布局或无限滚动布局,是一种常见的网页和移动应用界面设计方式,尤其在图片展示和电商应用中广泛使用。这种布局方式最初由Pinterest网站引入,其特点是页面元素(如图片)按照网格排列,...

    瀑布流实现

    在实际应用中,瀑布流的数据通常来自网络API。因此,需要熟悉HTTP请求库,如OkHttp或Volley,来获取JSON或XML格式的数据。解析这些数据时,可能需要用到Gson或Jackson等库,将接收到的字符串转化为Java对象。 2. *...

    react-native-waterfall:用于React Native的虚拟化和无限瀑布布局组件

    React本机瀑布 用于React-Native的虚拟化和无限瀑布布局组件 入门 npm i react-native-virtualized-waterfall 或者 yarn add react-native-virtualized-waterfall 预习 相关项目: 道具 请参考类型定义 *此项目...

    vue.js组件vue-waterfall-easy实现瀑布流效果

    Vue-waterfall-easy 提供了一种简洁的方式,允许开发者轻松地将瀑布流集成到他们的应用中。在介绍如何使用这个组件之前,我们先了解一下瀑布流布局的基本概念。瀑布流布局是一种常见的网页设计布局方式,尤其适用于...

    waterfall 瀑布流 demo

    在实际应用中,瀑布流加载可以优化用户体验,因为它只在用户滚动到相应位置时才加载更多的内容,减少了页面初次加载的时间。此外,通过Ajax动态加载,可以轻松实现无限滚动的效果,让用户无限制地浏览内容。 总结来...

    waterfall瀑布流.zip项目安卓应用源码下载

    本项目"waterfall瀑布流.zip"提供了Android应用的源码,可以作为学习和研究的实例。以下是一些关键知识点: 1. RecyclerView: 项目可能使用了RecyclerView作为数据展示的基础组件,它比ListView更灵活,支持多种...

    kuan-vue-waterfall:vue3.0瀑布流插件

    kuan-vue-waterfall (vue3.0 瀑布插件)不需要设置内容高度,间隙默认 0注意:如果没有图片需要延迟获取元素尺寸的话,可以设置delay=false,等待图片加载后显示元素体验比较差安装yarn add kuan-vue-waterfall# ...

    waterFall瀑布流插件

    在"waterFall-master"这个压缩包中,可能包含了以下文件和目录: - `index.html`: 主要HTML文件,包含瀑布流插件的结构和实例。 - `css/`: 存放CSS样式文件,用于定义元素的外观和布局。 - `js/`: 包含JavaScript...

    react-Reactwaterfall高性能无限滚动下拉加载

    通常,这个项目的结构会包括一个主组件(如`Waterfall`),它负责整个瀑布流布局和无限滚动逻辑;以及一些子组件(如`Item`),用于渲染每个单元格的内容。通过阅读和理解这些代码,开发者可以学习到如何在实际项目...

    瀑布流waterfall

    瀑布流(Waterfall)是一种网页布局方式,常用于图片展示或商品列表,它以其独特的视觉效果,使得页面在有限的空间内能展示更多的内容。在PHP中实现瀑布流,主要是通过JavaScript与服务器端的交互,获取数据并动态...

    waterfall, Duitang Waterfall Woo. (堆糖瀑布流).zip

    在这个项目中,“waterfall-master”可能包含了实现堆糖瀑布流效果的所有源代码文件、样式表、脚本、文档和其他相关资源。 详细知识点: 1. **瀑布流布局**:瀑布流布局(Waterfall Layout)是一种多列布局方式,...

    安卓Andriod源码——waterfall瀑布流.zip

    这个压缩包文件"安卓Andriod源码——waterfall瀑布流.zip"可能包含了一个实现这种布局的示例项目。现在,我们将深入探讨Android中的瀑布流布局及其实现。 1. **瀑布流布局概念**: 瀑布流布局,也称为流式布局,...

Global site tag (gtag.js) - Google Analytics