js仿京东轮播效果 选项卡套选项卡使用


Posted in Javascript onJanuary 12, 2017

本文实例为大家分享了js仿京东轮播效果的具体代码,实现选项卡套用选项卡,供大家参考,具体内容如下

效果图:

js仿京东轮播效果 选项卡套选项卡使用

代码:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
*{margin:0;padding:0;}
ul{list-style:none;}img{border:0;}
#tab{width:1000px;height:500px;margin:50px auto;}
#tab .title {width:200px;height:500px;display:inline-block;}
#tab .title li {width:200px;height:125px;float:left;line-height:125px;text-align:center;font-size:30px;background:#f1f1f1;border-bottom:1px dotted #000;}
#tab .title li.active {background:#fff;}
#tab .title li:hover{background:#fff;}
#tab .content {width:799px;height:500px;float:right;display:inline-block;position:relative;border:none;border:none;}
#tab .content img{position:absolute;top:0;left:0;width:799px;height:500px;}
#tab .content ul {position:absolute;width:799px;height:45px;bottom:0;left:0;filter(alpha:80);opacity:0.8;background:#000;}
#tab .content ul li {float:left;height:45px;line-height:45px;background:#d5d5d5;border-right:1px solid #fff;cursor:pointer;text-align:center;}
#tab .content ul li.active {background:red;}
#tab .content ul li:hover{background:red;}
</style>
<script>
window.onload = function () {
 var tab = document.getElementById('tab');
 var title = tab.getElementsByClassName('title')[0];
 var titleLi = title.getElementsByTagName('li');
 var main = tab.getElementsByClassName('main')[0];
 var img = main.getElementsByTagName('img')[0];
 var ul = main.getElementsByTagName('ul')[0];
 var subtitleLi = ul.getElementsByTagName('li');
 var arr = [
  {
   title : '最热团购',
   subtitle : ['最热团购1','最热团购2','最热团购3'],
   pic : [
    'img/tab/1-1.png',
    'img/tab/1-2.png',
    'img/tab/1-3.png'
   ]
  },
  {
   title : '商城特惠',
   subtitle : ['商城特惠1','商城特惠2','商城特惠3','商城特惠4'],
   pic : [
    'img/tab/2-1.png',
    'img/tab/2-2.png',
    'img/tab/2-3.png',
    'img/tab/2-4.png'
   ]
  },
  {
   title : '名品推荐',
   subtitle : ['名品推荐1','名品推荐2','名品推荐3','名品推荐4','名品推荐5'],
   pic : [
    'img/tab/3-1.png',
    'img/tab/3-2.png',
    'img/tab/3-3.png',
    'img/tab/3-4.png',
    'img/tab/3-5.png'
   ]
  },
  {
   title : '缤纷活动',
   subtitle : ['缤纷活动1','缤纷活动2','缤纷活动3','缤纷活动4'],
   pic : [
    'img/tab/4-1.png',
    'img/tab/4-2.png',
    'img/tab/4-3.png',
    'img/tab/4-3.png',
   ]
  }
 ];

 // 初始化
 for ( var i = 0; i < arr.length; i++ ) {
  // 大选项卡的标题
  var oLi = document.createElement('li');
  oLi.innerHTML = arr[i].title;
  oLi.index = i;
  oLi.onclick = function () {
   highlight(this);
   ul.innerHTML = '';
   changeTab(this.index);
  }
  title.appendChild(oLi);
 }
 changeTab(0);
 function changeTab(num) { 
  // 大选项卡的内容
  img.src = arr[num].pic[1];
  // 小标题
  for ( var j = 0; j < arr[num].subtitle.length; j++ ) {
   oLi = document.createElement('li');
   oLi.innerHTML = arr[num].subtitle[j];
   oLi.style.width = Math.floor(parseInt(800 / arr[num].subtitle.length) - 2) + 'px';
   oLi.index = j;
   oLi.onclick = function () {
    highlight(this);
    this.parentNode.previousElementSibling.src = arr[num].pic[this.index];
   }
   ul.appendChild(oLi);
  }
 }
 function highlight (ele) {
  var aLi = ele.parentNode.children;
  for ( var i = 0; i < aLi.length; i++ ){
     aLi[i].className = '';
  }
  ele.className = 'active';
 }
}
</script>
</head>
<body>
<div id="tab">
 <ul class="title">
 </ul>
 <div class="content">
  <div class="main">
   <img>
   <ul>
   </ul>
  </div>
 </div>
</div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
使弱类型的语言JavaScript变强势
Jun 22 Javascript
Jquery Autocomplete 结合asp.net使用要点
Oct 29 Javascript
表单序列化与jq中的serialize使用示例
Feb 21 Javascript
使用纯javascript实现经典扫雷游戏
Apr 23 Javascript
Javascript基础_嵌入图像的简单实现
Jun 14 Javascript
Node.js之网络通讯模块实现浅析
Apr 01 Javascript
react系列从零开始_简单谈谈react
Jul 06 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
JS实现生成由字母与数字组合的随机字符串功能详解
May 25 Javascript
微信小程序基于高德地图API实现天气组件(动态效果)
Oct 22 Javascript
JavaScript 实现轮播图特效的示例
Nov 05 Javascript
面试中canvas绘制图片模糊图片问题处理
Mar 13 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
Jan 12 #Javascript
JS百度地图搜索悬浮窗功能
Jan 12 #Javascript
原生js实现焦点轮播图效果
Jan 12 #Javascript
详解能在多种前端框架下使用的表格控件
Jan 11 #Javascript
vuejs父子组件通信的问题
Jan 11 #Javascript
bootstrap 表单验证使用方法
Jan 11 #Javascript
原生js实现无缝轮播图效果
Jan 11 #Javascript
You might like
菜鸟修复电子管记
2021/03/02 无线电
如何在PHP中使用Oracle数据库(4)
2006/10/09 PHP
Laravel中如何增加自定义全局函数详解
2017/05/09 PHP
Extjs中ComboBoxTree实现的下拉框树效果(自写)
2013/05/28 Javascript
JavaScript解析json格式数据简单示例
2014/12/09 Javascript
js获取元素外链样式的方法
2015/01/27 Javascript
js实现从中间开始往上下展开网页窗口的方法
2015/03/02 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
AngularJs Scope详解及示例代码
2016/09/01 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
Bootstrap图片轮播效果详解
2017/10/17 Javascript
Vue-cli 使用json server在本地模拟请求数据的示例代码
2017/11/02 Javascript
Vue中Axios从远程/后台读取数据
2019/01/21 Javascript
layer.prompt输入层的例子
2019/09/24 Javascript
python生成日历实例解析
2014/08/21 Python
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
简单谈谈Python中的json与pickle
2017/07/19 Python
Python实现注册登录系统
2017/08/08 Python
Django中login_required装饰器的深入介绍
2017/11/24 Python
Python if语句知识点用法总结
2018/06/10 Python
利用Python复制文件的9种方法总结
2019/09/02 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
Python如何优雅获取本机IP方法
2019/11/10 Python
Python+Redis实现布隆过滤器
2019/12/08 Python
基于Python爬取爱奇艺资源过程解析
2020/03/02 Python
关于Python turtle库使用时坐标的确定方法
2020/03/19 Python
Django实现任意文件上传(最简单的方法)
2020/06/03 Python
Python3使用 GitLab API 进行批量合并分支
2020/10/15 Python
美国第二大连锁书店:Books-A-Million
2017/12/28 全球购物
印度尼西亚最好的小工具在线商店:Erafone.com
2019/03/26 全球购物
西班牙宠物用品和食品网上商店:Tiendanimal
2019/06/06 全球购物
简历自荐信
2013/12/02 职场文书
2014年体育工作总结
2014/11/24 职场文书
《钓鱼的启示》教学反思
2016/02/18 职场文书
mysql部分操作
2021/04/05 MySQL
Python安装使用Scrapy框架
2022/04/12 Python