js之选项卡效果(淘宝侧边栏)
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link rel="stylesheet" href="css/index.css" />
</head>
<body>
<ul class="nav_list">
<li class="focus">公告</li>
<li>规则</li>
<li>论坛</li>
<li>安全</li>
<li>公益</li>
</ul>
<div class="nav_listcont">
<ul>
<li><a href="">阿里集团战略投资居然之家 开启家居新零售时代</a></li>
<li><a href="">大数据透析女性消费</a></li>
<li><a href="">"天字号"计划半年记</a></li>
</ul>
<ul>
<li><a href="">《阿里创作平台管理规范(“微淘号·达人”适用)》变更公示通知</a></li>
<li><a href="">《淘宝网数字娱乐市场须提供官方授权的商品目录》变更公示通知</a></li>
<li><a href="">《淘宝网大家电须通过供销平台建立代销模式的指定品牌》变更公示通知</a></li>
<li><a href="">飞猪旅行集市用车相关管理规定变更公示通知</a></li>
</ul>
<ul>
<li><a href="">淘宝招募志愿者</a></li>
<li><a href="">评价管理功能上线</a></li>
<li><a href="">正确的品牌营销推广</a></li>
<li><a href="">2018年消费者趋势</a></li>
</ul>
<ul>
<li><a href="">公益“护苗”行动招募</a></li>
<li><a href="">你愿意加入我们吗?</a></li>
<li><a href="">卖家注意:风险通报!</a></li>
<li><a href="">售假获刑又起诉!</a></li>
</ul>
<ul>
<li><a href="">九寨沟地震紧急救援</a></li>
<li><a href="">公益宝贝卖家准入公告</a></li>
<li><a href="">致百万商家的感谢信</a></li>
<li><a href="">公益宝贝卖家发票索取</a></li>
</ul>
</div>
<script src="js/common.js"></script>
<script src="js/index.js"></script>
</body>
</html>
CSS
*{
margin: 0;
padding: 0;
}
ul li{
list-style: none;
}
.nav_list{
width: 300px;
height: 30px;
background: black;
border-radius: 15px;
box-shadow: 0 3px 10px dodgerblue;
margin: 30px auto 0;
}
.nav_list li{
width: 60px;
height: 30px;
line-height: 30px;
text-align: center;
float: left;
color: #9ff;
transition: all .5s;
}
.nav_list li:nth-of-type(1):hover{
border-top-left-radius: 15px;
border-bottom-left-radius: 15px;
}
.nav_list li:last-child:hover{
border-top-right-radius: 15px;
border-bottom-right-radius: 15px;
}
.nav_list .focus{
background: red;
color: yellow;
}
.nav_listcont ul li a{
font-size: 14px;
color: #333;
text-decoration: none;
}
.nav_listcont{
width: 300px;
height: 80px;
margin: 0 auto;
overflow: hidden;
background: #ccc;
}
.nav_listcont ul li{
width: 150px;
height: 30px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
line-height: 30px;
float: left;
text-shadow: 0 0 10px yellow;
margin: 5px 0 0;
}
.nav_listcont ul:nth-of-type(1) li:nth-of-type(1){
width: 300px;
}
JS
Common.js
function byCLassName(sClassName){
if(document.getElementsByClassName){
return document.getElementsByClassName(sClassName);
} else {
var arr = [];
var allTags = document.getElementsByTagName('*');
for(var i = 0; i< allTags.length;i++){
if(allTags.className === sClassName){
arr.push(allTags.className);
}
}
return arr;
}
}
//封装ajax请求函数
function ajax({type,data,url,async,beforeSend,success,complete}){
var async = async || true;
// 创建对象
var xhr = new XMLHttpRequest();
// 字符串的拼接
if(typeof data === 'object'){
var str = '';
for(var attr in data){
str += encodeURIComponent(attr) + '=' + encodeURIComponent(data[attr]) + '&';
}
data = str.slice(0,-1);
}
if(type.toUpperCase() === 'GET' && data){
url += '?' + data;
}
// 配置
xhr.open(type,url,async);
// 接收数据
xhr.onreadystatechange = function(){
if(xhr.readyState === 4){
if(xhr.status === 200){
success && success(xhr.responseText);
}
complete && complete();
}
};
// 发送
beforeSend && beforeSend();
if(type.toUpperCase() === 'POST'){
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send(data);
} else {
xhr.send();
}
}
JS
var oNavList = byCLassName('nav_list')[0];
var oNavLi = oNavList.children;
var oNavListCont = byCLassName('nav_listcont')[0];
var oNavContLi = oNavListCont.children;
//页面加载完成默认第一个li为block默认显示第一个,当鼠标滑入其他li时,显示该li所对应的nav_listcont
for(let i = 0;i<oNavLi.length;i++){
oNavLi[i].index = i;
console.log(oNavLi[i].index)
oNavLi[i].onmouseover = function(){
oNavLi[0].className = '';
oNavLi[1].className = '';
oNavLi[2].className = '';
oNavLi[3].className = '';
oNavLi[4].className = '';
this.className = 'focus';
for(var j = 0;j<oNavContLi.length;j++){
oNavContLi[j].style.display = 'none';
}
oNavContLi[this.index].style.display = 'block';
}
}
js之选项卡效果(淘宝侧边栏)的更多相关文章
- ios 类似的效果淘宝商品详细页面
今天试着写ios 分类似影响淘宝的商品详细页面 我使用第三方库EGORefreshTableHeaderView有一个下拉效果刷新PWLoadMoreTableFooterView上拉电阻负载许多其他 ...
- js实现百度,淘宝搜索功能
Common.js //封装类名 function byClassName(sClassName){ if(document.getElementsBYClassName){ return d ...
- JavaScript(Node.js)+ Selenium 实现淘宝抢单
JavaScript(Node.js)+ Selenium 淘宝抢单 为了买买买我也是拼了,看了一点selenium的资料,随便写的. 程序写的比较烂,但是够我自己用了,望各路大牛指教. 使用说明: ...
- 新手学js的效果图1---( 淘宝等商城货物查看特效)
本人结合之前所学一起写了,多个特效,只是新手自己瞎鼓捣的,思路清晰,具体实现的货物放大镜等,替换当中的img地址就可以查看特效 <!DOCTYPE html> <html lang= ...
- nginx css,js合并插件,淘宝nginx合并js,css插件
先下载Nginx_concat_module,下载后把它放在/usr/local/src/文件夹中,新建文件夹nginx-http-concat把下载的config ngx_http_concat_ ...
- selenium 淘宝登入反爬虫解决方案(亲测有效)
前言 目前在对淘宝进行数据爬取的时候都会碰到,登入时的滑块问题,无论是手动还是脚本都不成功.这里的很重要一个原因是很多的网站都对selenium做了反爬虫机制.接下来是笔者参考网上的网友们的方法亲自测 ...
- (转载)自定义CoordinatorLayout的Behavior(2):实现淘宝和QQ ToolBar透明渐变效果
自定义CoordinatorLayout的Behavior(2):实现淘宝和QQ ToolBar透明渐变效果 作者 小武站台 关注 2016.02.19 11:34 字数 1244 阅读 3885评论 ...
- 解决国内npm安装太慢的方法,又不能FQ情况下,使用淘宝镜像教程
安装npm及cnpm(Windows) [工具官网] 因为国内上网下载组件太慢,淘宝给我们提供了镜像源,,但是我不是建意FQ上网.条件有限的可以使用下面的方法安装CNPM,原文转自网络,正好自己需要也 ...
- 仿淘宝分页按钮效果简单美观易使用的JS分页控件
分页按钮思想: 1.少于9页,全部显示 2.大于9页,1.2页显示,中间页码当前页为中心,前后各留两个页码 附件中有完整例子的压缩包下载.已更新到最新版本 先看效果图: 01输入框焦点效果 ...
随机推荐
- html-w3c规范及常见标签
W3C提倡的web结构: 内容(HTML)与表现(css样式)分离 内容(HTML)与行为(JS)分离 HTML内容结构要求语义化 基本规范: 标签名和属性名称必须小写 HTML标签必须关闭 属性值必 ...
- 从0开始 Java学习 packet用法
packet 包的用法 参考博客:https://www.cnblogs.com/Ring1981/p/6240412.html 用法 java 源文件带有包名,往往容易出错 如:H:\code\He ...
- python 类和对象的属性
python类和对象的属性分为类属性和对象属性两大类,类属性属于类,而对象属性属于对象. 1. 父类的对象属性会被子类的对象继承. 2. 父类的类属性会被子类继承,还是作为类属性,如果父类改变了类属性 ...
- saga+.net core 分布式事务处理
Apache ServiceComb Saga 是一个微服务应用的数据最终一致性解决方案 中文官方地址:https://github.com/apache/servicecomb-saga/blob/ ...
- redis_port.py
!/usr/bin/env python import os import json import simplejson as json t=os.popen("""su ...
- Gogeos安装
环境要求: Windows64,Go,minGW(统一64位) 1.安装geos 下载GEOS 3.3.8源码,解压后,按readme文件编译(基于VS2010的64位编译工具执行的nmake编译命令 ...
- css tips —— 在css中完成国际化
前提 在日常处理国际化的时候,通常是将key通过类似intl.xx(key)转换为对应环境的文案,可是如果需要在css中加入对应逻辑应该怎么做呢(比如在after的伪元素中显示不同的文案),毕竟在cs ...
- mongodb禁止外网访问以及添加账号
未曾料到被黑客勒索比特币的戏码竟然降临到我的身上,几个月的技术积累付之一炬.怪只怪自己学艺不精,心存侥幸和无知,不过经此一役,方知网络安全防护的重要性. 一直未给自己的mongodb数据库设置账号密码 ...
- Python之坐标轴刻度细化、坐标轴设置、标题图例添加
学习python中matplotlib绘图设置坐标轴刻度.文本 http://www.jb51.net/article/134638.htm Python绘图 https://www.cnblogs. ...
- c++复习要点
自增和自减运算符有前缀和后缀两种形式,都会改变对象,所以不能对常量对象操作. 前缀形式返回改变后的对象,返回*this. 后缀形式返回改变之前的值,所以必须创建一个代表这个值的独立对象并返回它,是通过 ...