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 相关文章推荐
jQuery 表单验证扩展(四)
Oct 20 Javascript
javascript中使用replaceAll()函数实现字符替换的方法
Dec 25 Javascript
Kibo 用于处理键盘事件的Javascript工具库
Oct 28 Javascript
解析javascript 实用函数的使用详解
May 10 Javascript
JS常用字符串处理方法应用总结
May 22 Javascript
在父页面得到zTree已选中的节点的方法
Feb 12 Javascript
JavaScript实现把数字转换成中文
Jun 29 Javascript
AngularJS使用ngMessages进行表单验证
Dec 27 Javascript
js中使用使用原型(prototype)定义方法的好处详解
Jul 04 Javascript
获取IE浏览器Cookie信息的方法
Jan 23 Javascript
JavaScript函数柯里化原理与用法分析
Mar 31 Javascript
Vue 2.0学习笔记之Vue中的computed属性
Oct 16 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
Protoss建筑一览
2020/03/14 星际争霸
苏联队长,苏联超人蝙蝠侠,这些登场的“山寨”英雄真的很严肃
2020/04/09 欧美动漫
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
PHP5 字符串处理函数大全
2010/03/23 PHP
php获取汉字拼音首字母的方法
2015/10/21 PHP
PHP开发APP端微信支付功能
2017/02/17 PHP
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
理解Javascript_12_执行模型浅析
2010/10/18 Javascript
JS小功能(checkbox实现全选和全取消)实例代码
2013/11/28 Javascript
使用js操作css实现js改变背景图片示例
2014/03/10 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
Jquery实现的简单轮播效果【附实例】
2016/04/19 Javascript
windows系统下更新nodejs版本的方案
2017/11/24 NodeJs
vuex 的简单使用
2018/03/22 Javascript
vue组件jsx语法的具体使用
2018/05/21 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
Vue项目History模式404问题解决方法
2018/10/31 Javascript
jQuery实现根据身份证号获取生日、年龄、性别等信息的方法
2019/01/09 jQuery
vue中v-show和v-if的异同及v-show用法
2019/06/06 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
[48:37]EG vs OG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
tensorflow 加载部分变量的实例讲解
2018/07/27 Python
简单了解python PEP的一些知识
2019/07/13 Python
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
Infababy英国:婴儿推车、Travel System婴儿车和婴儿汽车座椅销售
2018/05/23 全球购物
MATCHESFASHION澳大利亚/亚太地区:英国时尚奢侈品电商
2020/01/14 全球购物
应届大学生自荐信格式
2013/09/21 职场文书
大学生简历中个人的自我评价
2013/10/06 职场文书
护理学中专毕业生求职信
2013/11/11 职场文书
企业内部培训方案
2014/02/04 职场文书
我爱我校演讲稿
2014/05/21 职场文书
竞选学习委员演讲稿
2014/09/01 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书
Python实现简单得递归下降Parser
2022/05/02 Python
win10电脑关机快捷键是哪个 win10快速关机的几种方法
2022/08/14 数码科技