JS实现分页浏览横向图片(类轮播)实例代码


Posted in Javascript onNovember 06, 2017

昨天朋友问我怎么用js实现分页浏览横向图片功能,其实实现代码很简单的,下面小编给大家带来了具体实现代码,代码如下所示:

common.js

function $(id) { 
 return document.getElementById(id); 
} 
function $_tag(tag) { 
 return document.getElementsByTagName(tag); 
}

index.html

<!DOCTYPE html> 
<html lang="en"> 
<head> 
 <meta charset="UTF-8"> 
 <title>Document</title> 
 <style> 
  a { 
   cursor: pointer; 
  } 
  .div1 { 
   width: 410px; /* 可以去掉 */ 
   height: 100px; 
   overflow-x: hidden; 
   white-space: nowrap; 
  } 
  .div2 { 
   display: none; 
  } 
 </style> 
</head> 
<body> 
 <div class="div1" id="div1"> 
 </div> 
 <a onclick="pre()">上一页</a> 
 <a onclick="next()">下一页</a> 
 <div class="div2"> 
  <img src="images/1.jpg" alt=""> 
  <img src="images/2.jpg" alt=""> 
  <img src="images/3.jpg" alt=""> 
  <img src="images/4.jpg" alt=""> 
  <img src="images/5.jpg" alt=""> 
  <img src="images/6.jpg" alt=""> 
  <img src="images/7.jpg" alt=""> 
 </div> 
 <script src="js/common.js"></script> 
 <script> 
  //搞一个拼img标签的函数 传参数 for循环 
  //扩展、稳定、兼容、好用(简单)... 
  //<img src="images/7.jpg" alt=""> 
  var count = 4; // 每页的图片数目 
  var currentpage = 1; //当前页数 
  var imgs = $_tag("img"); 
  //console.log(imgs); 可以深入了解下 
  console.log("图片总数:" + imgs.length); 
  var totalpage = Math.ceil(imgs.length/count); 
  console.log("总页数:" + totalpage); 
  function pre() { 
   if(currentpage == 1){ 
    console.log("已经是第一页了!"); 
    return; 
   }else if(currentpage > 1){ 
    var tmp = (currentpage - 2) * count + 1; 
    var str = ""; 
    str += "<img src='" + "images/" + tmp + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+1) + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+2) + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+3) + ".jpg'>"; 
    currentpage -= 1; 
    console.log(str); 
    $("div1").innerHTML = str; 
   } 
  } 
  function next() { 
   if(currentpage == totalpage){ 
    console.log("已经是最后一页了!"); 
   }else if(currentpage == (totalpage - 1)){ 
    var sur = imgs.length % count; 
    var tmp1 = currentpage * count + 1; 
    var str = ""; 
    console.log("剩余数:" + sur); 
    for(var i=0;i<sur;i++){ 
     console.log("第几张:" + (tmp1+i)); 
     str += "<img src=\"" + "images/" + (tmp1+i) + ".jpg\">"; 
    } 
    currentpage += 1; 
    console.log(str); 
    $("div1").innerHTML = str; 
   }else if(currentpage > 0){ 
    var tmp = currentpage * count + 1; 
    console.log("tmp:" + tmp); 
    var str = ""; 
    str += "<img src='" + "images/" + tmp + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+1) + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+2) + ".jpg'>"; 
    str += "<img src='" + "images/" + (tmp+3) + ".jpg'>"; 
    currentpage += 1; 
    $("div1").innerHTML = str; 
   } 
  } 
  function firstpage() { 
   var str = ""; 
   str += "<img src='" + "images/" + 1 + ".jpg'>"; 
   str += "<img src='" + "images/" + 2 + ".jpg'>"; 
   str += "<img src='" + "images/" + 3 + ".jpg'>"; 
   str += "<img src='" + "images/" + 4 + ".jpg'>"; 
   console.log(str); 
   $("div1").innerHTML = str; 
  } 
  window.onload = function() { 
   firstpage(); 
  } 
 </script> 
</body> 
</html>

总结

以上所述是小编给大家介绍的JS实现分页浏览横向图片(类轮播)实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使用JQUERY Tabs插件宿主IFRAMES
Jan 01 Javascript
用JS控制回车事件的代码
Feb 20 Javascript
js实现网页自动刷新可制作节日倒计时效果
May 27 Javascript
jquery实现动静态条形统计图
Aug 17 Javascript
javascript实现图片轮播效果
Jan 20 Javascript
Vue数据驱动模拟实现2
Jan 11 Javascript
关于js对textarea换行符的处理方法浅析
Aug 03 Javascript
关于单文件组件.vue的使用
Sep 20 Javascript
Vue中用props给data赋初始值遇到的问题解决
Nov 27 Javascript
Jquery cookie插件实现原理代码解析
Aug 04 jQuery
springboot+VUE实现登录注册
May 27 Vue.js
js作用域及作用域链工作引擎
Jul 07 Javascript
Angular实现类似博客评论的递归显示及获取回复评论的数据
Nov 06 #Javascript
vue自定义过滤器创建和使用方法详解
Nov 06 #Javascript
Bootstrap 树控件使用经验分享(图文解说)
Nov 06 #Javascript
vue复合组件实现注册表单功能
Nov 06 #Javascript
基于vue组件实现猜数字游戏
May 28 #Javascript
vue路由嵌套的SPA实现步骤
Nov 06 #Javascript
vue综合组件间的通信详解
Nov 06 #Javascript
You might like
PHP编程 SSO详细介绍及简单实例
2017/01/13 PHP
Yii框架多语言站点配置方法分析【中文/英文切换站点】
2020/04/07 PHP
TinyMCE 新增本地图片上传功能
2010/11/05 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
2014/05/28 Javascript
JavaScript中数组成员的添加、删除介绍
2014/12/30 Javascript
jquery实现滑动特效代码
2015/08/10 Javascript
jQuery实现的精美平滑二级下拉菜单效果代码
2016/03/28 Javascript
浅谈JS的基础类型与引用类型
2016/09/13 Javascript
微信JS-SDK自定义分享功能实例详解【分享给朋友/分享到朋友圈】
2016/11/25 Javascript
vue2.0移除或更改的一些东西(移除index key)
2017/08/28 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
2018/08/24 Javascript
js实现弹出框的拖拽效果实例代码详解
2019/04/16 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
NodeJs 实现简单WebSocket即时通讯的示例代码
2019/08/05 NodeJs
浅谈javascript错误处理
2019/08/11 Javascript
[08:06]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant 选手采访
2021/03/11 DOTA
探寻python多线程ctrl+c退出问题解决方案
2014/10/23 Python
python遍历数组的方法小结
2015/04/30 Python
Python pandas实现excel工作表合并功能详解
2019/08/29 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
python对一个数向上取整的实例方法
2020/06/18 Python
Python 实现集合Set的示例
2020/12/21 Python
详解使用双缓存解决Canvas clearRect引起的闪屏问题
2019/04/29 HTML / CSS
BRASTY捷克:购买香水、化妆品、手袋和手表
2017/07/12 全球购物
常见的软件开发流程有哪些
2015/11/14 面试题
Python面试题:Python里面如何生成随机数
2015/03/12 面试题
电子商务专业个人的自我评价分享
2013/10/29 职场文书
工商技校毕业生自荐信
2013/11/15 职场文书
骨干教师培训制度
2014/01/13 职场文书
同学聚会欢迎辞
2014/01/14 职场文书
毕业自我评价
2014/02/05 职场文书
2019年自助餐厅创业计划书模板
2019/08/22 职场文书
go语言基础 seek光标位置os包的使用
2021/05/09 Golang
MySQL中distinct与group by之间的性能进行比较
2021/05/26 MySQL
MongoDB支持的数据类型
2022/04/11 MongoDB