分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

基于jquery的水平滚轴组件,多参数可设置。

发布时间:2023-09-06 01:09责任编辑:白小东关键词:组件

闲来无事,继续封装。此次封装的为水平滚轴组件,可选择滚动的距离大小。闲话不多说,直接上图。

参数说明:

vis:4                中间区域可现实的 li 个数
scroll:4               每次滚过的li个数,若大于vis,则取 scroll%vis的余数
wrap:".scroll-main ul"                 中间区域的包裹层选择器
item:".scroll-main ul li",          中间区域每个li的选择器
btnPre:".pre-scroll"                左滚按钮的选择器
btnNext:".next-scroll"           右滚按钮的选择器

html如下:

<div class="scroll-banner"> ???<span class="pre-scroll iconfont">&#xe602;</span> ???<span class="next-scroll iconfont">&#xe601;</span> ???<div class="scroll-main"> ???????<ul> ???????????<li><a href="#"><img src="images/scroll-pic.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic2.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic3.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic4.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic2.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic4.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic.jpg"></a></li> ???????????<li><a href="#"><img src="images/scroll-pic2.jpg"></a></li> ???????</ul> ???</div></div>

css如下:

 .scroll-banner{ ????position:relative; }.scroll-main{ ???width:560px; ???margin:0 auto; ???overflow:hidden;}.scroll-main ul{ ?overflow:hidden; ?position:relative; ?left:0px;}.scroll-main ul li{ ?float:left; ?width:140px; ?height:120px; ?padding:0 10px;}.scroll-main ul li img{ ???width:100%; ???height:100%;}.pre-scroll,.next-scroll{ ???position: absolute; ???top:35px; ???color:#fff; ???z-index:100; ???cursor:pointer; ???font-size:40px;}.pre-scroll{ ???left:10px;}.next-scroll{ ???right:10px;}

js如下:

function scrollBanner(obj){ ???this.set={ ???????vis:4, ???????scroll:4, ???????wrap:".scroll-main ul", ???????item:".scroll-main ul li", ???????btnPre:".pre-scroll", ???????btnNext:".next-scroll" ???} ???var _this=this; ???$.extend(this.set,obj) ???this.set.scroll=this.set.scroll>this.set.vis?this.set.scroll%this.set.vis:this.set.scroll; ???var itemNum=$(_this.set.item).length; ???var itemW=$(_this.set.item).outerWidth(); ???$(_this.set.wrap).css({"width":itemNum*itemW+"px"}) ???$(_this.set.btnPre).eq(0).click(function(){ ???????var nowL=parseInt($(_this.set.wrap).eq(0).css("left")) ???????if(nowL>=0){ ???????????$(_this.set.wrap+":not(:animated)").eq(0).animate({"left":-(itemNum-_this.set.vis)*itemW+"px"}) ???????}else{ ???????????$(_this.set.wrap+":not(:animated)").eq(0).animate({"left":nowL+_this.set.scroll*itemW+"px"}) ???????} ???????????}) ???$(_this.set.btnNext).eq(0).click(function(){ ???????var nowL=parseInt($(_this.set.wrap).eq(0).css("left")) ???????if(nowL<=-(itemNum-_this.set.vis)*itemW){ ???????????$(_this.set.wrap+":not(:animated)").eq(0).animate({"left":"0px"}) ???????}else{ ???????????$(_this.set.wrap+":not(:animated)").eq(0).animate({"left":nowL-_this.set.scroll*itemW+"px"}) ???????} ???})}//调用new scrollBanner({ ???scroll:2});

基于jquery的水平滚轴组件,多参数可设置。

原文地址:http://www.cnblogs.com/pomelott/p/7482421.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved