上拉加载插件dropload.js,封装成seajs插件

站点文件路径(建议看的时候,可以先把这部分内容复制出来,然后再对比文件路径往下看)

.wap
├── app   
│   ├── Http
│   │   
│   ├── Jobs
│   │   └── Job.php
│   ├── Libs
│   │   ├── Helper.php
│   │   ├── Oauth2.php
│   │   ├── RedisManager.php
│   │   ├── Rest.php
│   │   └── ReturnCode.php
│   ├── Listeners
│   ├── Policies
│   ├── Providers
│   │   ├── AppServiceProvider.php
│   │   ├── AuthServiceProvider.php
│   │   ├── EventServiceProvider.php
│   │   └── RouteServiceProvider.php
│   └── User.php
├── artisan
├── bootstrap
│   ├── app.php
│   ├── autoload.php
│   └── cache
│       └── services.php
├── composer.json
├── composer.lock
├── composer.phar
├── config  
├── database
├── gulpfile.js
├── package.json
├── phpunit.xml
├── public
│   ├── about.html
│   ├── assets
│   │   ├── css  
│   │   │   ├── wap2 
│   │   ├── fonts
│   │   │   
│   │   ├── img
│   │   │   
│   │   ├── js
│   │   │   ├── lib  
│   │   │   │   ├── dropload.js
│   │   │   │   ├── dropload.min.js
│   │   │   │   ├── exif.js
│   │   │   │   ├── exif.min.js
│   │   │   │   ├── global-72b2917f61.js
│   │   │   │   ├── global.js
│   │   │   │   ├── global.min.js
│   │   │   │   ├── helpsell-d362f63460.js
│   │   │   │   ├── helpsell.js
│   │   │   │   ├── helpsell.min.js
│   │   │   │   ├── imgbase64-f823578e4a.js
│   │   │   │   ├── imgbase64.js
│   │   │   │   ├── imgbase64.min.js
│   │   │   │   ├── imglazyLoad2-c72b9ed19d.js
│   │   │   │   ├── imglazyLoad2.js
│   │   │   │   ├── iscroll.js
│   │   │   │   ├── jquery.2.1.4.js
│   │   │   │   ├── jquery.2.1.4.min.js
│   │   │   │   ├── jquery.owl.carousel.js
│   │   │   │   ├── marquee.js
│   │   │   │   ├── mescroll.min.js
│   │   │   │   ├── mescroll.minmore.js
│   │   │   │   ├── mobileSelect2.min.js
│   │   │   │   ├── mobileSelect.js
│   │   │   │   ├── mobileSelect.min.js
│   │   │   │   ├── myglobal-230f5c8a96.js
│   │   │   │   ├── myglobal.js
│   │   │   │   ├── navbarscroll.js
│   │   │   │   ├── pay-cdab138b4a.js
│   │   │   │   ├── pay.js
│   │   │   │   ├── pay.min.js
│   │   │   │   ├── pop2.js
│   │   │   │   ├── pop-e5a9f25d9d.js
│   │   │   │   ├── pop.js
│   │   │   │   ├── pop.min.js
│   │   │   │   ├── sea.config.js
│   │   │   │   ├── sea.config.min.js
│   │   │   │   ├── seajs-css.js
│   │   │   │   ├── sea.min.js
│   │   │   │   ├── sku.min.js
│   │   │   │   ├── sku-wap.min.js
│   │   │   │   ├── sm.js
│   │   │   │   ├── sm.min.js
│   │   │   │   ├── swiper.js
│   │   │   │   ├── swiper.min.js
│   │   │   │   ├── sysnotice-3557666d77.js
│   │   │   │   ├── sysnotice.js
│   │   │   │   ├── template.js
│   │   │   │   ├── template.min.js
│   │   │   │   ├── translate-4c0f2c03d0.js
│   │   │   │   ├── translate.js
│   │   │   │   ├── translate.min.js
│   │   │   │   ├── weixin.js
│   │   │   │   ├── weixin.min.js
│   │   │   │   └── zepto.min.js
│   │   │   ├── modules
│   │   │   │   
│   │   │   ├── wap2
│   │   │   │   ├── activity
│   │   │   │   │   ├── a10-f3b9642fca.js
│   │   │   │   │   ├── a10.js
│   │   │   │   │   ├── a10.min.js
│   │   │   │   │   ├── a11-0621620ea7.js
│   │   │   │   │   ├── a11.js
│   │   │   │   │   ├── a11.min.js
│   │   │   │   │   ├── a12-e2d49b0b2e.js
│   │   │   │   │   ├── a12.js
│   │   │   │   │   ├── a12.min.js
│   │   │   │   │   ├── a1-4146f0acea.js
│   │   │   │   │   ├── a1.js
│   │   │   │   │   ├── a1.min.js
│   │   │   │   │   ├── a2-b0478a39ea.js
│   │   │   │   │   ├── a2.js
│   │   │   │   │   ├── a2.min.js
│   │   │   │   │   ├── a3-1a442a13f3.js
│   │   │   │   │   ├── a3.js
│   │   │   │   │   ├── a3.min.js
│   │   │   │   │   ├── a4-b4111d68b8.js
│   │   │   │   │   ├── a4.js
│   │   │   │   │   ├── a4.min.js
│   │   │   │   │   ├── a5-6275acf081.js
│   │   │   │   │   ├── a5.js
│   │   │   │   │   ├── a5.min.js
│   │   │   │   │   ├── a6-a3eaa4f0f2.js
│   │   │   │   │   ├── a6.js
│   │   │   │   │   ├── a6.min.js
│   │   │   │   │   ├── a7-5ca341659f.js
│   │   │   │   │   ├── a7.js
│   │   │   │   │   ├── a7.min.js
│   │   │   │   │   ├── a8-a0f3587be8.js
│   │   │   │   │   ├── a8.js
│   │   │   │   │   ├── a8.min.js
│   │   │   │   │   ├── a9-5eca7504de.js
│   │   │   │   │   ├── a9.js
│   │   │   │   │   └── a9.min.js
│   │   │   │   ├── address
│   │   │   │   │   ├── add-bca9be0413.js
│   │   │   │   │   ├── add.js
│   │   │   │   │   ├── add.min.js
│   │   │   │   │   ├── address_add.js
│   │   │   │   │   ├── address_build.js
│   │   │   │   │   ├── address_city.js
│   │   │   │   │   ├── address_edit.js
│   │   │   │   │   ├── address_list.js
│   │   │   │   │   ├── certify-7f241e75ec.js
│   │   │   │   │   ├── certify.js
│   │   │   │   │   ├── certify.min.js
│   │   │   │   │   ├── edit-371eaea1da.js
│   │   │   │   │   ├── edit.js
│   │   │   │   │   ├── edit.min.js
│   │   │   │   │   ├── list-a386e2d87b.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   └── list.min.js
│   │   │   │   ├── adviceManager
│   │   │   │   │   └── adviceManager.js
│   │   │   │   ├── bank
│   │   │   │   │   ├── add-a5d5e1480b.js
│   │   │   │   │   ├── add.js
│   │   │   │   │   ├── add.min.js
│   │   │   │   │   ├── edit-ff29035f27.js
│   │   │   │   │   ├── edit.js
│   │   │   │   │   ├── edit.min.js
│   │   │   │   │   ├── list-ebc8d4f6fd.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   └── list.min.js
│   │   │   │   ├── common-e435a9b861.js
│   │   │   │   ├── common.js
│   │   │   │   ├── common.min.js
│   │   │   │   ├── coupon
│   │   │   │   │   ├── index-0f089da70f.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── use_coupon-766e5453e1.js
│   │   │   │   │   └── use_coupon.js
│   │   │   │   ├── goods
│   │   │   │   │   ├── brand-9ed389d8fb.js
│   │   │   │   │   ├── brand.js
│   │   │   │   │   ├── brand.min.js
│   │   │   │   │   ├── cate-310ac85ed4.js
│   │   │   │   │   ├── cate.js
│   │   │   │   │   ├── cate.min.js
│   │   │   │   │   ├── detail-caeb32bed9.js
│   │   │   │   │   ├── detail.js
│   │   │   │   │   ├── detail.min.js
│   │   │   │   │   ├── detail-wap.js
│   │   │   │   │   ├── list-06171e3d51.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   ├── list.min.js
│   │   │   │   │   ├── myBrand-68a30db3a6.js
│   │   │   │   │   ├── myBrand.js
│   │   │   │   │   ├── newBrand-e64977a780.js
│   │   │   │   │   ├── newBrand.js
│   │   │   │   │   ├── search-365cf29de2.js
│   │   │   │   │   ├── search.js
│   │   │   │   │   └── search.min.js
│   │   │   │   ├── help
│   │   │   │   │   ├── code-e5c2b24cce.js
│   │   │   │   │   ├── code.js
│   │   │   │   │   └── code.min.js
│   │   │   │   ├── home
│   │   │   │   │   ├── index-636afaaef7.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   └── index.min.js
│   │   │   │   ├── index
│   │   │   │   │   ├── adviceManager.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── index_select_community.js
│   │   │   │   │   ├── recommend_list.js
│   │   │   │   │   ├── rush_list.js
│   │   │   │   │   ├── show_life_list.js
│   │   │   │   │   └── show_news_list.js
│   │   │   │   ├── indexrush
│   │   │   │   │   ├── handlebars-933127c119.js
│   │   │   │   │   ├── handlebars.js
│   │   │   │   │   ├── imglazyLoad2-24c8033a43.js
│   │   │   │   │   ├── imglazyLoad2.js
│   │   │   │   │   ├── index-7966cedd15.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── index_static-34577637be.js
│   │   │   │   │   ├── index_static.js
│   │   │   │   │   ├── jquery-1.11.2.min.js
│   │   │   │   │   ├── jquery-1-d3ed97676b.11.2.min.js
│   │   │   │   │   ├── swiper-33eb826253.min.js
│   │   │   │   │   ├── swiper.min.js
│   │   │   │   │   ├── touch-a8f4147e78.js
│   │   │   │   │   └── touch.js
│   │   │   │   ├── leader
│   │   │   │   │   ├── apply-5e62c45c83.js
│   │   │   │   │   ├── apply.js
│   │   │   │   │   ├── apply.min.js
│   │   │   │   │   ├── member-8848ad2e35.js
│   │   │   │   │   ├── member.js
│   │   │   │   │   ├── member.min.js
│   │   │   │   │   ├── phone-06acfd7c4a.js
│   │   │   │   │   ├── phone.js
│   │   │   │   │   ├── phone.min.js
│   │   │   │   │   ├── sale-f38b280b32.js
│   │   │   │   │   └── sale.min.js
│   │   │   │   ├── login
│   │   │   │   │   ├── forget_password.js
│   │   │   │   │   ├── login.js
│   │   │   │   │   └── vlogin.js
│   │   │   │   ├── meowChannel
│   │   │   │   │   ├── index.js
│   │   │   │   │   └── layer.js
│   │   │   │   ├── msg
│   │   │   │   │   ├── detail-99b39cad14.js
│   │   │   │   │   ├── detail.js
│   │   │   │   │   ├── detail.min.js
│   │   │   │   │   ├── list-de83241017.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   └── list.min.js
│   │   │   │   ├── newindex
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── moreCateList.js
│   │   │   │   │   ├── shopCategoryList.js
│   │   │   │   │   └── volumeList.js
│   │   │   │   ├── news
│   │   │   │   │   ├── benefit_detail.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   └── shipping_list.js
│   │   │   │   ├── order
│   │   │   │   │   ├── billing.js
│   │   │   │   │   ├── billing_list.js
│   │   │   │   │   ├── billing_log.js
│   │   │   │   │   ├── cart-c7dc7364be.js
│   │   │   │   │   ├── cart.js
│   │   │   │   │   ├── cart.min.js
│   │   │   │   │   ├── confirm-9177c86b1f.js
│   │   │   │   │   ├── confirm.js
│   │   │   │   │   ├── confirm.min.js
│   │   │   │   │   ├── detail-df065ffed5.js
│   │   │   │   │   ├── detail.js
│   │   │   │   │   ├── detail.min.js
│   │   │   │   │   ├── express-6c5d0541fa.js
│   │   │   │   │   ├── express.js
│   │   │   │   │   ├── express.min.js
│   │   │   │   │   ├── list-140c9f680b.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   ├── list.min.js
│   │   │   │   │   ├── order_apply_service.js
│   │   │   │   │   ├── order_detail.js
│   │   │   │   │   ├── order_list2.js
│   │   │   │   │   ├── order_list.js
│   │   │   │   │   ├── order_service.js
│   │   │   │   │   └── shipping_list.js
│   │   │   │   ├── PreOrder
│   │   │   │   │   └── index.js
│   │   │   │   ├── profit
│   │   │   │   │   ├── cash-227c4fd8ff.js
│   │   │   │   │   ├── cash-fail-bd65d66138.js
│   │   │   │   │   ├── cash-fail.js
│   │   │   │   │   ├── cash-fail.min.js
│   │   │   │   │   ├── cash.js
│   │   │   │   │   ├── cash.min.js
│   │   │   │   │   ├── cash-success-a0be2409b8.js
│   │   │   │   │   ├── cash-success.js
│   │   │   │   │   ├── cash-success.min.js
│   │   │   │   │   ├── detail-16d0288b56.js
│   │   │   │   │   ├── detail.js
│   │   │   │   │   ├── detail.min.js
│   │   │   │   │   ├── info-5103b1af93.js
│   │   │   │   │   ├── info.js
│   │   │   │   │   ├── info.min.js
│   │   │   │   │   ├── list-cb5953d3d0.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   ├── list.min.js
│   │   │   │   │   ├── spread-dd1312e2a3.js
│   │   │   │   │   └── spread.min.js
│   │   │   │   ├── property
│   │   │   │   │   ├── property_repair_evaluate.js
│   │   │   │   │   └── repair_submit.js
│   │   │   │   ├── property_repair
│   │   │   │   │   └── list.js
│   │   │   │   ├── qrcode
│   │   │   │   │   ├── shop-2637683116.js
│   │   │   │   │   ├── shop.js
│   │   │   │   │   └── shop.min.js
│   │   │   │   ├── register
│   │   │   │   │   ├── registercertify.js
│   │   │   │   │   ├── register.js
│   │   │   │   │   ├── registertype.js
│   │   │   │   │   ├── selectcommunity.js
│   │   │   │   │   └── selectcommunitymobile.js
│   │   │   │   ├── sale
│   │   │   │   │   └── saleList.js
│   │   │   │   ├── seckill
│   │   │   │   │   ├── index-14c65c4c82.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── seckill_detail-ab78feccc7.js
│   │   │   │   │   └── seckill_detail.js
│   │   │   │   ├── secondsKill
│   │   │   │   │   ├── index.js
│   │   │   │   │   └── TouchSlide.1.1.source.js
│   │   │   │   ├── seller
│   │   │   │   │   ├── leader-d288b18686.js
│   │   │   │   │   ├── leader.js
│   │   │   │   │   ├── leader.min.js
│   │   │   │   │   ├── list-c8cc9757cf.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   └── list.min.js
│   │   │   │   ├── set
│   │   │   │   │   ├── list-1b9b316ceb.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   └── list.min.js
│   │   │   │   ├── shopCategory
│   │   │   │   │   ├── index-ea61c2648d.js
│   │   │   │   │   └── index.js
│   │   │   │   ├── shopIndex
│   │   │   │   │   ├── index-c850d4c28b.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── list-661088e635.js
│   │   │   │   │   ├── list.js
│   │   │   │   │   ├── list.min.js
│   │   │   │   │   ├── recommendList-0a6304009c.js
│   │   │   │   │   ├── recommendList.js
│   │   │   │   │   ├── shopCategory-212d345760.js
│   │   │   │   │   ├── shopCategory.js
│   │   │   │   │   └── shopIndex_list-41b0cbe25e.js
│   │   │   │   ├── spellGroup
│   │   │   │   │   ├── detail.js
│   │   │   │   │   ├── draw_order_details.js
│   │   │   │   │   ├── index.js
│   │   │   │   │   ├── spelling_detail.js
│   │   │   │   │   └── spell_order_details.js
│   │   │   │   ├── subject
│   │   │   │   │   ├── index-4439b25fc3.js
│   │   │   │   │   └── index.js
│   │   │   │   ├── team
│   │   │   │   │   ├── goodsdetail-da8b8eb469.js
│   │   │   │   │   ├── goodsdetail.js
│   │   │   │   │   ├── goodsdetail.min.js
│   │   │   │   │   ├── goodslist-d70d90fe29.js
│   │   │   │   │   ├── goodslist.js
│   │   │   │   │   ├── goodslist.min.js
│   │   │   │   │   ├── payed-ac5d44f073.js
│   │   │   │   │   ├── payed.js
│   │   │   │   │   ├── payed.min.js
│   │   │   │   │   ├── share-ee434089e0.js
│   │   │   │   │   ├── share.js
│   │   │   │   │   ├── share.min.js
│   │   │   │   │   ├── teamdetail-f1415cf883.js
│   │   │   │   │   ├── teamdetail.js
│   │   │   │   │   ├── teamdetail.min.js
│   │   │   │   │   ├── teamlist-c490ff2cd6.js
│   │   │   │   │   ├── teamlist.js
│   │   │   │   │   └── teamlist.min.js
│   │   │   │   ├── testmy
│   │   │   │   │   └── index.js
│   │   │   │   ├── user
│   │   │   │   │   ├── about.js
│   │   │   │   │   ├── center-be0ea9a88f.js
│   │   │   │   │   ├── center.js
│   │   │   │   │   ├── center.min.js
│   │   │   │   │   ├── certify-1c4ad4d379.js
│   │   │   │   │   ├── certify.js
│   │   │   │   │   ├── certify.min.js
│   │   │   │   │   ├── change_password.js
│   │   │   │   │   ├── collect-4.js
│   │   │   │   │   ├── collect-ef66a98dd5.js
│   │   │   │   │   ├── collect.js
│   │   │   │   │   ├── collect.min.js
│   │   │   │   │   ├── coupon.js
│   │   │   │   │   ├── feedback.js
│   │   │   │   │   ├── integral.js
│   │   │   │   │   ├── invite_code.js
│   │   │   │   │   ├── order_coupon.js
│   │   │   │   │   ├── setting.js
│   │   │   │   │   ├── user_img.js
│   │   │   │   │   ├── user_info.js
│   │   │   │   │   ├── user_name.js
│   │   │   │   │   └── wallet.js
│   │   │   │   └── withdraw
│   │   │   │       ├── apply-fd7fb08a21.js
│   │   │   │       ├── apply.js
│   │   │   │       ├── apply.min.js
│   │   │   │       ├── fail-165bdf2d41.js
│   │   │   │       ├── fail.js
│   │   │   │       ├── fail.min.js
│   │   │   │       ├── LArea-468875ed91.js
│   │   │   │       ├── LArea.js
│   │   │   │       ├── phone-e4156fc77d.js
│   │   │   │       ├── phone.js
│   │   │   │       ├── phone.min.js
│   │   │   │       ├── success-8b5037e5b7.js
│   │   │   │       ├── success.js
│   │   │   │       └── success.min.js
│   │   │   
│   │   └── less
│   │       
│   ├── bank.html
│   ├── bg.jpg
│   ├── code0.png
│   ├── code1.png
│   ├── coupon.png
│   ├── cs.php
│   ├── favicon.ico
│   ├── help0.jpg
│   ├── help1.jpg
│   ├── icon-nocoupon.png
│   ├── index.php
│   ├── info.php
│   ├── logo.png
│   ├── MP_verify_9e2H8EyymHnANZOQ.txt
│   ├── MP_verify_ZrkVNOTjourEX7oY.txt
│   ├── oauth.php
│   ├── pay.html
│   ├── pc.html
│   ├── php_errors.log
│   ├── register.html
│   ├── robots.txt  
├── README.md
├── resources
│   ├── assets 
│   ├── lang 
│   └── views
│       ├── errors
│       │   └── 503.blade.php
│       ├── wap
│       │   ├── activity
│       │   │   ├── a10.blade.php
│       │   │   ├── a1.blade.php
│       │   │   ├── a2.blade.php
│       │   │   ├── a3.blade.php
│       │   │   ├── a4.blade.php
│       │   │   ├── a5.blade.php
│       │   │   ├── a6.blade.php
│       │   │   ├── a7.blade.php
│       │   │   ├── a8.blade.php
│       │   │   ├── a9.blade.php
│       │   │   └── recommend.blade.php
│       │   ├── address
│       │   │   ├── add.blade.php
│       │   │   ├── certify.blade.php
│       │   │   ├── edit.blade.php
│       │   │   └── list.blade.php
│       │   ├── error
│       │   │   ├── 401.blade.php
│       │   │   ├── 404.blade.php
│       │   │   └── 503.blade.php
│       │   ├── goods
│       │   │   ├── cate.blade.php
│       │   │   └── detail.blade.php
│       │   ├── help
│       │   │   └── code.blade.php
│       │   ├── home
│       │   │   └── index.blade.php
│       │   ├── index
│       │   │   ├── index.blade.php
│       │   │   ├── showNewsDetail.blade.php
│       │   │   └── showNewsList.blade.php
│       │   ├── layouts
│       │   │   ├── masterapp.blade.php
│       │   │   └── master.blade.php
│       │   ├── order
│       │   │   ├── cart.blade.php
│       │   │   ├── confirm.blade.php
│       │   │   ├── detail.blade.php
│       │   │   ├── express.blade.php
│       │   │   └── list.blade.php
│       │   ├── seller
│       │   │   ├── leader.blade.php
│       │   │   └── list.blade.php
│       │   ├── team
│       │   │   ├── goodsdetail.blade.php
│       │   │   ├── goodslist.blade.php
│       │   │   ├── payed.blade.php
│       │   │   ├── rule.blade.php
│       │   │   ├── share.blade.php
│       │   │   ├── teamdetail.blade.php
│       │   │   └── teamlist.blade.php
│       │   └── user
│       │       ├── center.blade.php
│       │       └── collect.blade.php
│       ├── wap2
│       │   ├── about
│       │   │   └── subscribe.blade.php
│       │   ├── aboutus
│       │   │   └── aboutus.blade.php
│       │   ├── activity
│       │   │   ├── a10.blade.php
│       │   │   ├── a1.blade.php
│       │   │   ├── a2.blade.php
│       │   │   ├── a3.blade.php
│       │   │   ├── a4.blade.php
│       │   │   ├── a5.blade.php
│       │   │   ├── a6.blade.php
│       │   │   ├── a7.blade.php
│       │   │   ├── a8.blade.php
│       │   │   ├── a9.blade.php
│       │   │   └── recommend.blade.php
│       │   ├── address
│       │   │   ├── add.blade.php
│       │   │   ├── address_add.blade.php
│       │   │   ├── address_build.blade.php
│       │   │   ├── address_city.blade.php
│       │   │   ├── address_edit.blade.php
│       │   │   ├── address_list.blade.php
│       │   │   ├── certify.blade.php
│       │   │   ├── edit.blade.php
│       │   │   └── list.blade.php
│       │   ├── adviceManager
│       │   │   └── adviceManagerDetail.blade.php
│       │   ├── bank
│       │   │   ├── add.blade.php
│       │   │   ├── edit.blade.php
│       │   │   └── list.blade.php
│       │   ├── coupon
│       │   │   ├── index.blade.php
│       │   │   └── use_coupon.blade.php
│       │   ├── error
│       │   │   ├── 401.blade.php
│       │   │   ├── 404.blade.php
│       │   │   └── 503.blade.php
│       │   ├── goods
│       │   │   ├── brand.blade.php
│       │   │   ├── cate.blade.php
│       │   │   ├── detail.blade.php
│       │   │   ├── list.blade.php
│       │   │   ├── myBrand.blade.php
│       │   │   ├── search.blade.php
│       │   │   └── wxGoodsDetail.blade.php
│       │   ├── home
│       │   │   └── index.blade.php
│       │   ├── index
│       │   │   ├── article_goods_list.blade.php
│       │   │   ├── home_index.blade.php
│       │   │   ├── index.blade.php
│       │   │   ├── indexSelectCommunity.blade.php
│       │   │   ├── recommendList.blade.php
│       │   │   ├── rushList.blade.php
│       │   │   ├── showLifeDetail.blade.php
│       │   │   ├── showLifeList.blade.php
│       │   │   ├── showNewsDetail.blade.php
│       │   │   └── showNewsList.blade.php
│       │   ├── leader
│       │   │   ├── apply.blade.php
│       │   │   ├── member.blade.php
│       │   │   ├── phone.blade.php
│       │   │   └── sale.blade.php
│       │   ├── login
│       │   │   ├── forgetPassword.blade.php
│       │   │   ├── login.blade.php
│       │   │   └── vlogin.blade.php
│       │   ├── meowChannel
│       │   │   ├── luckyDraw.blade.php
│       │   │   └── meowChannel.blade.php
│       │   ├── msg
│       │   │   ├── detail.blade.php
│       │   │   └── list.blade.php
│       │   ├── newIndex
│       │   │   ├── moreGoods.blade.php
│       │   │   ├── newIndex.blade.php
│       │   │   ├── shopcategoryList.blade.php
│       │   │   └── volumeList.blade.php
│       │   ├── news
│       │   │   ├── benefit_detail.blade.php
│       │   │   ├── index.blade.php
│       │   │   └── shipping_list.blade.php
│       │   ├── order
│       │   │   ├── billing.blade.php
│       │   │   ├── billing_list.blade.php
│       │   │   ├── billing_log.blade.php
│       │   │   ├── cart.blade.php
│       │   │   ├── confirm.blade.php
│       │   │   ├── detail.blade.php
│       │   │   ├── express.blade.php
│       │   │   ├── list.blade.php
│       │   │   ├── order_apply_service.blade.php
│       │   │   ├── order_detail.blade.php
│       │   │   ├── order_list.blade.php
│       │   │   ├── order_service.blade.php
│       │   │   └── shipping_list.blade.php
│       │   ├── preOrder
│       │   │   └── preOrder.blade.php
│       │   ├── profit
│       │   │   ├── cash.blade.php
│       │   │   ├── cash-fail.blade.php
│       │   │   ├── cash-success.blade.php
│       │   │   ├── detail.blade.php
│       │   │   ├── info.blade.php
│       │   │   ├── list.blade.php
│       │   │   └── spread.blade.php
│       │   ├── property
│       │   │   ├── index.blade.php
│       │   │   ├── property_parking_add.blade.php
│       │   │   ├── property_parking.blade.php
│       │   │   ├── property_parking_number.blade.php
│       │   │   ├── property_parking_pay2.blade.php
│       │   │   ├── property_parking_pay.blade.php
│       │   │   ├── property_parking_recharge2.blade.php
│       │   │   ├── property_parking_recharge.blade.php
│       │   │   ├── property_pay_address.blade.php
│       │   │   ├── property_pay.blade.php
│       │   │   ├── property_pay_page.blade.php
│       │   │   ├── property_pay_record.blade.php
│       │   │   ├── property_repair.blade.php
│       │   │   ├── property_repair_evaluate.blade.php
│       │   │   └── property_repair_submit.blade.php
│       │   ├── qrcode
│       │   │   └── shop.blade.php
│       │   ├── register
│       │   │   ├── register.blade.php
│       │   │   ├── registeredCertification.blade.php
│       │   │   ├── registerType.blade.php
│       │   │   ├── selectCommunity.blade.php
│       │   │   └── vlogin.blade.php
│       │   ├── sale
│       │   │   ├── saleDetail.blade.php
│       │   │   └── saleList.blade.php
│       │   ├── secondsKill
│       │   │   ├── killDetail.blade.php
│       │   │   └── secondsKill.blade.php
│       │   ├── set
│       │   │   └── list.blade.php
│       │   ├── shopCategory
│       │   │   └── index.blade.php
│       │   ├── shopIndex
│       │   │   ├── list.blade.php
│       │   │   ├── recommendList.blade.php
│       │   │   ├── shopCategory.blade.php
│       │   │   └── shopIndex.blade.php
│       │   ├── spellGroup
│       │   │   ├── disassembly.blade.php
│       │   │   ├── drawOrderDetails.blade.php
│       │   │   ├── failureDetail.blade.php
│       │   │   ├── paymentResult.blade.php
│       │   │   ├── spellDetail.blade.php
│       │   │   ├── spellGroup.blade.php
│       │   │   ├── spellingDetail.blade.php
│       │   │   ├── spellOrderDetails.blade.php
│       │   │   ├── spellRules.blade.php
│       │   │   └── successDetail.blade.php
│       │   ├── subject
│       │   │   └── index.blade.php
│       │   ├── team
│       │   │   ├── goodsdetail.blade.php
│       │   │   ├── goodslist.blade.php
│       │   │   ├── payed.blade.php
│       │   │   ├── rule.blade.php
│       │   │   ├── share.blade.php
│       │   │   ├── teamdetail.blade.php
│       │   │   └── teamlist.blade.php
│       │   ├── test
│       │   │   └── autofocus.blade.php
│       │   ├── testmy
│       │   │   └── index.blade.php
│       │   ├── user
│       │   │   ├── about.blade.php
│       │   │   ├── center.blade.php
│       │   │   ├── certify.blade.php
│       │   │   ├── change_password.blade.php
│       │   │   ├── collect.blade.php
│       │   │   ├── coupon.blade.php
│       │   │   ├── feedback.blade.php
│       │   │   ├── help.blade.php
│       │   │   ├── integral.blade.php
│       │   │   ├── inviteCode.blade.php
│       │   │   ├── myCollection.blade.php
│       │   │   ├── newcenter.blade.php
│       │   │   ├── order_coupon.blade.php
│       │   │   ├── setting.blade.php
│       │   │   ├── user_img.blade.php
│       │   │   ├── user_info.blade.php
│       │   │   ├── user_name.blade.php
│       │   │   └── wallet.blade.php
│       │   └── withdraw
│       │       ├── apply.blade.php
│       │       ├── fail.blade.php
│       │       ├── phone.blade.php
│       │       └── success.blade.php
│       └── welcome.blade.php
├── server.php
├── storage
│   
├── tests
│   
└── vendor   


使用seajs封装dropload.js,上拉刷新插件

文件路径:wap\public\assets\js\lib\dropload.js

define(function(require,exports,module){
    var $ = require('jquery');
    module.exports = {
        Init : function(){
            this.start($);
        },
        start :function ($){
            'use strict';
            var win = window;
            var doc = document;
            var $win = $(win);
            var $doc = $(doc);
            $.fn.dropload = function(options){
                return new MyDropLoad(this, options);
            };
            var MyDropLoad = function(element, options){
                var me = this;
                me.$element = element;
                // 上方是否插入DOM
                me.upInsertDOM = false;
                // loading状态
                me.loading = false;
                // 是否锁定
                me.isLockUp = false;
                me.isLockDown = false;
                // 是否有数据
                me.isData = true;
                me._scrollTop = 0;
                me._threshold = 0;
                me.init(options);
            };

            // 初始化
            MyDropLoad.prototype.init = function(options){
                var me = this;
                me.opts = $.extend(true, {}, {
                    scrollArea : me.$element,                                            // 滑动区域
                    domUp : {                                                            // 上方DOM
                        domClass   : 'dropload-up',
                        domRefresh : '<div class="dropload-refresh">↓下拉刷新</div>',
                        domUpdate  : '<div class="dropload-update">↑释放更新</div>',
                        domLoad    : '<div class="dropload-load"><span class="loading"></span>加载中...</div>'
                    },
                    domDown : {                                                          // 下方DOM
                        domClass   : 'dropload-down',
                        domRefresh : '<div class="dropload-refresh">↑上拉加载更多</div>',
                        domLoad    : '<div class="dropload-load"><span class="loading"></span>加载中...</div>',
                        domNoData  : '<div class="dropload-noData">暂无数据</div>'
                    },
                    autoLoad : true,                                                     // 自动加载
                    distance : 50,                                                       // 拉动距离
                    threshold : '',                                                      // 提前加载距离
                    loadUpFn : '',                                                       // 上方function
                    loadDownFn : '',                                                     // 下方function
                    domLoadFlag:true                                                     首次加载是否显示加载标识默认显示
                }, options);

                // 如果加载下方,事先在下方插入DOM
                if(me.opts.loadDownFn != ''){
                    me.$element.append('<div class="'+me.opts.domDown.domClass+'">'+me.opts.domDown.domRefresh+'</div>');
                    me.$domDown = $('.'+me.opts.domDown.domClass);
                }

                // 计算提前加载距离
                if(!!me.$domDown && me.opts.threshold === ''){
                    // 默认滑到加载区2/3处时加载
                    me._threshold = Math.floor(me.$domDown.height()*1/3);
                }else{
                    me._threshold = me.opts.threshold;
                }

                // 判断滚动区域
                if(me.opts.scrollArea == win){
                    me.$scrollArea = $win;
                    // 获取文档高度
                    me._scrollContentHeight = $doc.height();
                    // 获取win显示区高度  —— 这里有坑
                    me._scrollWindowHeight = doc.documentElement.clientHeight;
                }else{
                    me.$scrollArea = me.opts.scrollArea;
                    me._scrollContentHeight = me.$element[0].scrollHeight;
                    me._scrollWindowHeight = me.$element.height();
                }
                fnAutoLoad(me);

                // 窗口调整
                $win.on('resize',function(){
                    if(me.opts.scrollArea == win){
                        // 重新获取win显示区高度
                        me._scrollWindowHeight = win.innerHeight;
                    }else{
                        me._scrollWindowHeight = me.$element.height();
                    }
                });

                // 绑定触摸
                me.$element.on('touchstart',function(e){
                    if(!me.loading){
                        fnTouches(e);
                        fnTouchstart(e, me);
                    }
                });
                me.$element.on('touchmove',function(e){
                    if(!me.loading){
                        fnTouches(e, me);
                        fnTouchmove(e, me);
                    }
                });
                me.$element.on('touchend',function(){
                    if(!me.loading){
                        fnTouchend(me);
                    }
                });

                // 加载下方
                me.$scrollArea.on('scroll',function(){
                    me._scrollTop = me.$scrollArea.scrollTop();

                    // 滚动页面触发加载数据
                    if(me.opts.loadDownFn != '' && !me.loading && !me.isLockDown && (me._scrollContentHeight - me._threshold) <= (me._scrollWindowHeight + me._scrollTop)){
                        loadDown(me);
                    }
                });
            };

            // touches
            function fnTouches(e){
                if(!e.touches){
                    e.touches = e.originalEvent.touches;
                }
            }

            // touchstart
            function fnTouchstart(e, me){
                me._startY = e.touches[0].pageY;
                // 记住触摸时的scrolltop值
                me.touchScrollTop = me.$scrollArea.scrollTop();
            }

            // touchmove
            function fnTouchmove(e, me){
                me._curY = e.touches[0].pageY;
                me._moveY = me._curY - me._startY;

                if(me._moveY > 0){
                    me.direction = 'down';
                }else if(me._moveY < 0){
                    me.direction = 'up';
                }

                var _absMoveY = Math.abs(me._moveY);

                // 加载上方
                if(me.opts.loadUpFn != '' && me.touchScrollTop <= 0 && me.direction == 'down' && !me.isLockUp){
                    e.preventDefault();

                    me.$domUp = $('.'+me.opts.domUp.domClass);
                    // 如果加载区没有DOM
                    if(!me.upInsertDOM){
                        me.$element.prepend('<div class="'+me.opts.domUp.domClass+'"></div>');
                        me.upInsertDOM = true;
                    }

                    fnTransition(me.$domUp,0);

                    // 下拉
                    if(_absMoveY <= me.opts.distance){
                        me._offsetY = _absMoveY;
                        // todo:move时会不断清空、增加dom,有可能影响性能,下同
                        me.$domUp.html(me.opts.domUp.domRefresh);
                        // 指定距离 < 下拉距离 < 指定距离*2
                    }else if(_absMoveY > me.opts.distance && _absMoveY <= me.opts.distance*2){
                        me._offsetY = me.opts.distance+(_absMoveY-me.opts.distance)*0.5;
                        me.$domUp.html(me.opts.domUp.domUpdate);
                        // 下拉距离 > 指定距离*2
                    }else{
                        me._offsetY = me.opts.distance+me.opts.distance*0.5+(_absMoveY-me.opts.distance*2)*0.2;
                    }

                    me.$domUp.css({'height': me._offsetY});
                }
            }

            // touchend
            function fnTouchend(me){
                var _absMoveY = Math.abs(me._moveY);
                if(me.opts.loadUpFn != '' && me.touchScrollTop <= 0 && me.direction == 'down' && !me.isLockUp){
                    fnTransition(me.$domUp,300);

                    if(_absMoveY > me.opts.distance){
                        me.$domUp.css({'height':me.$domUp.children().height()});
                        me.$domUp.html(me.opts.domUp.domLoad);
                        me.loading = true;
                        me.opts.loadUpFn(me);
                    }else{
                        me.$domUp.css({'height':'0'}).on('webkitTransitionEnd mozTransitionEnd transitionend',function(){
                            me.upInsertDOM = false;
                            $(this).remove();
                        });
                    }
                    me._moveY = 0;
                }
            }

            // 如果文档高度不大于窗口高度,数据较少,自动加载下方数据
            function fnAutoLoad(me){
                if(me.opts.autoLoad){
                    if((me._scrollContentHeight - me._threshold) <= me._scrollWindowHeight){
                        loadDown(me);
                    }
                }
            }

            // 重新获取文档高度
            function fnRecoverContentHeight(me){
                if(me.opts.scrollArea == win){
                    me._scrollContentHeight = $doc.height();
                }else{
                    me._scrollContentHeight = me.$element[0].scrollHeight;
                }
            }

            // 加载下方
            function loadDown(me){
                me.direction = 'up';
                if(me.opts.domLoadFlag){
                    me.$domDown.html(me.opts.domDown.domLoad);
                }else {
                    me.opts.domLoadFlag=true;
                }
                me.loading = true;
                me.opts.loadDownFn(me);
            }

            // 锁定
            MyDropLoad.prototype.lock = function(direction){
                var me = this;
                // 如果不指定方向
                if(direction === undefined){
                    // 如果操作方向向上
                    if(me.direction == 'up'){
                        me.isLockDown = true;
                        // 如果操作方向向下
                    }else if(me.direction == 'down'){
                        me.isLockUp = true;
                    }else{
                        me.isLockUp = true;
                        me.isLockDown = true;
                    }
                    // 如果指定锁上方
                }else if(direction == 'up'){
                    me.isLockUp = true;
                    // 如果指定锁下方
                }else if(direction == 'down'){
                    me.isLockDown = true;
                    // 为了解决DEMO5中tab效果bug,因为滑动到下面,再滑上去点tab,direction=down,所以有bug
                    me.direction = 'up';
                }
            };

            // 解锁
            MyDropLoad.prototype.unlock = function(){
                var me = this;
                // 简单粗暴解锁
                me.isLockUp = false;
                me.isLockDown = false;
                // 为了解决DEMO5中tab效果bug,因为滑动到下面,再滑上去点tab,direction=down,所以有bug
                me.direction = 'up';
            };

            // 无数据
            MyDropLoad.prototype.noData = function(flag){
                var me = this;
                if(flag === undefined || flag == true){
                    me.isData = false;
                }else if(flag == false){
                    me.isData = true;
                }
            };

            // 重置
            MyDropLoad.prototype.resetload = function(){
                var me = this;
                if(me.direction == 'down' && me.upInsertDOM){
                    me.$domUp.css({'height':'0'}).on('webkitTransitionEnd mozTransitionEnd transitionend',function(){
                        me.loading = false;
                        me.upInsertDOM = false;
                        $(this).remove();
                        fnRecoverContentHeight(me);
                    });
                }else if(me.direction == 'up'){
                    me.loading = false;
                    // 如果有数据
                    if(me.isData){
                        // 加载区修改样式
                        me.$domDown.html(me.opts.domDown.domRefresh);
                        fnRecoverContentHeight(me);
                        fnAutoLoad(me);
                    }else{
                        // 如果没数据
                        me.$domDown.html(me.opts.domDown.domNoData);
                    }
                }
            };

            // css过渡
            function fnTransition(dom,num){
                dom.css({
                    '-webkit-transition':'all '+num+'ms',
                    'transition':'all '+num+'ms'
                });
            }
        }





    }
})

seaj.config配置dropload插件

文件路径:wap\public\assets\js\lib\sea.config.js

!function () {
    seajs.config({
        paths: {front: _global.url.front + "/assets"},
        alias: {           
            jquery: "front/js/lib/jquery.2.1.4.min.js",          
            droploadsea: "front/js/lib/dropload.js"        
        },
        //map: [[".js", ".js?t\x3d" + parseInt((new Date).getTime())]]//测试
        map: [[".js", ".js?v\x3d" +"9"]]//线下
    })
}();

首页index.js引入上拉刷新插件

文件路径:wap\public\assets\js\wap2\newindex\index.js

/*
 author : zero,
 desc : 首页
 */

seajs.use([
    'jquery',   
    'droploadsea'
], function ($,dropload) {

    function Start() {        
        //初始化上拉加载插件,这个很重要,否则$对象将不会有dropload函数,最终导致插件无法执行
        dropload.Init();
        this.Init();
    }

    Start.prototype = {
        Init: function () {
            var _this = this;
            _this.Render();
          

        },
        Render: function () {

            var _this = this;
           
            //上拉刷新
            _this.updateList();

        },
        
        updateList: function () {
            var _this = this;
            var page = 1, size = 10;

            var dropload = $('.page-group').dropload({
                scrollArea: window,
                domDown: {
                    domClass: 'dropload-down',
                    domRefresh: '<div class="dropload-refresh" style="display: none;">上拉加载更多</div>',
                    domLoad: '<div class="dropload-load"><span class="loading"></span>加载中...</div>',
                    domNoData: '<div class="dropload-noData">===我是有底线的===</div>'
                },
                threshold: 100,
                domLoadFlag: false,//首次加载是否显示加载标识
                loadDownFn: function (me) {
                    //setTimeout(function () {
                    _.ajaxApi('api/shop_goods_recommend', 'get', {page: page, size: size}, function (res) {
                        if (res.code == 0) {
                            var data = res.data;
                            if (data.length > 0) {

                                $("#goods_recommend").show();

                                var html = template('tpl-recommend', {recommend: data});


                                $('.goods_recommend_list').append(html);
                                _this.Event();
                                page++;

                                // 即使加载出错,也得重置
                                me.resetload();

                            } else {

                                if (page == 1) {
                                    $("#goods_recommend").hide();
                                }
                                me.lock();
                                me.noData();
                                me.resetload();
                                return true;
                            }
                        } else {
                            $("#goods_recommend").hide();
                            me.lock();
                            me.noData();
                            me.resetload();
                        }
                    }, true, false);
                    //}, 500);


                }
            });


        }
      

    }

    new Start();

})

该示例需要对js,jquery,seajs用法有基本了解,同时,该示例是用在laravel5.6框架中的,其他框架用法基本相同,只是文件路径可能有所变化,如有疑问,请在评论区留言,会尽力解答

转载于:https://my.oschina.net/php7/blog/1626954

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值