博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
响应式图片,在不同尺寸下切换不同张数
阅读量:5978 次
发布时间:2019-06-20

本文共 2214 字,大约阅读时间需要 7 分钟。

全局标记变量

let displaySize = 3; //默认展示图片数量let displayIndex = 0; //默认从第一张开始显示

resize 事件

$(window).on('resize', function () {        let width = $(this).width();        let $li = $('.similar .similar-home');        let len = $li.length;        if (width > 1020) {            displaySize = 3;            $li.hasClass('middle-screen') && $li.removeClass('middle-screen');            $li.hasClass('small-screen') && $li.removeClass('small-screen');        } else if (width > 600) {            displaySize = 2;            $li.hasClass('middle-screen') || $li.addClass('middle-screen');            $li.hasClass('small-screen') && $li.removeClass('small-screen');        } else {            displaySize = 1;            $li.hasClass('middle-screen') && $li.removeClass('middle-screen');            $li.hasClass('small-screen') || $li.addClass('small-screen');        }        let wholeList = Array.prototype.slice.call($('.similar .similar-home'));        toggleShowList(wholeList, displayIndex, displaySize);    }).trigger('resize');

封装的函数

/** *  * @param {*} wholeList arrayLiked object dom-list * @param {*} displayIndex int * @param {*} displaySize int */function toggleShowList(wholeList, displayIndex, displaySize) {    let len = wholeList.length;    let showList = [];    if (displayIndex + displaySize < len) {        showList = wholeList.splice(displayIndex, displaySize);    }else{        showList = wholeList.splice(displayIndex, len).concat(wholeList.splice(0,(displayIndex+displaySize-len)));    }    for (let i = 0, len = wholeList.length; i < len; i++) {        $(wholeList[i]).css('display', 'none');    }    for (let i = 0, len = showList.length; i < len; i++) {        $(showList[i]).css('display', 'block');    }}

点击切换

// Data.CLick 的值为navigator.userAgent.match(/iphone|ipad|ipod|android|windows phone/i)?'touchstart':'click';$('.similar').on(Data.CLICK, '.change-house', function () {    let wholeList = Array.prototype.slice.call($('.similar .similar-home'));    let maxIndex = wholeList.length;    displayIndex += displaySize;    if (displayIndex > maxIndex) {        displayIndex = 0;    }    toggleShowList(wholeList, displayIndex, displaySize);});

转载于:https://www.cnblogs.com/lakeInHeart/p/7603345.html

你可能感兴趣的文章
jQuery宽屏游戏焦点图
查看>>
图片怎样优化的8个小技巧
查看>>
利用Nginx加GeoIP MaxMind数据库获取用户的地理位置
查看>>
日志概述
查看>>
HBase实操 | 如何使用HBase存储图片
查看>>
.NET Core SDK在Windows系统安装后出现Failed to load the hostfxr.dll等问题的解决方法
查看>>
openlayer2 三:加载geoserver图层
查看>>
Spark Worker启动源码分析
查看>>
安卓开发学习笔记(一):如何用Android Stuidio导出apk文件?
查看>>
SwiftNotice 发布——纯 Swift 编写的弹出提示及“菊花会动”库
查看>>
linux ssh 登录脚本
查看>>
React-Native组件
查看>>
css 实现文字自动换行切同行元素高度自适应
查看>>
在线图表编辑工具 draw.io 10.6.5 版本发布
查看>>
Python爬虫之Xpath学习
查看>>
CentOS 搭建 ftp 服务
查看>>
第一个 spring Boot 应用通过Docker 来实现构建、运行、发布
查看>>
在Windows平台上搭建Docker开发环境
查看>>
Flask 快速入门
查看>>
04.HTML5(拖放)
查看>>