Django打造大型企业官网(五)
4.6.切换轮播图的箭头样式以及显示和隐藏
templates/news/index.html
<span class="arrow left-arrow">‹</span>
<span class="arrow right-arrow">›</span>
src/css/index.scss
.arrow{
font-family: Helvetica Neue,Helvetica,Arial,sans-serif;
font-size: 70px;
color: #fff;
top: 50%;
margin-top: -45px;
cursor: pointer;
position: absolute;
display: none;
}
.left-arrow{
left: 20px;
}
.right-arrow{
right: 20px;
}
src/js/index.js
//初始化
function Banner() {
this.bannerGroup = $("#banner-group");
this.index = 0;
this.leftArrow = $('.left-arrow');
this.rightArrow = $('.right-arrow');
this.listenBannerHover();
}; Banner.prototype.toggleArrow = function (isShow) {
if(isShow) {
var self = this;
self.leftArrow.show();
self.rightArrow.show();
}else{
self.leftArrow.hide();
self.rightArrow.hide();
}
}; Banner.prototype.listenBannerHover = function (){
var self = this;
this.bannerGroup.hover(function () {
//鼠标移动到上面
clearInterval(self.timer);
self.toggleArrow(true);
},function () {
//鼠标离开
self.loop();
self.toggleArrow(false);
});
};
4.7.轮播图上下切换
gulpfile.js
var util = require("gulp-util");
var sourcemaps = require("gulp-sourcemaps");
//js任务
gulp.task("js",done =>{
gulp.src("./src/js/*.js")
.pipe(sourcemaps.init())
.pipe(uglify().on('error',util.log))
.pipe(rename({"suffix":".min"}))
.pipe(sourcemaps.write())
.pipe(gulp.dest('./dist/js/'))
.pipe(bs.reload({
stream: true
}));
done();
});
src/js/index.js
//初始化
function Banner() {
this.bannerGroup = $("#banner-group");
this.index = 0;
this.leftArrow = $('.left-arrow');
this.rightArrow = $('.right-arrow');
//获取li标签的数量,去控制点轮播图的箭头,下一张上一张图片
this.bannerUL = $("#banner-ul");
this.liList = this.bannerUL.children("li");
this.bannerCount = this.liList.length;
this.listenBannerHover();
}; Banner.prototype.animate = function () {
var self = this;
self.bannerUL.animate({"left":-798*self.index},500);
}; Banner.prototype.listenArrowClick = function () {
var self = this;
self.leftArrow.click(function () {
if(self.index === 0){
self.index = self.bannerCount - 1;
}else{
self.index --;
}
self.animate();
}); self.rightArrow.click(function () {
if(self.index === self.bannerCount - 1){
self.index = 0;
}else{
self.index ++;
}
self.animate();
});
}; //添加一个run方法
Banner.prototype.run = function () {
this.loop();
this.listenArrowClick();
};
4.8.小圆点结果和样式
templates/news/index.html
<div class="page-control-group">
<ul class="page-control">
<li class="active" ></li>
<li ></li>
<li></li>
<li></li>
</ul>
</div>
src/css/index.scss
.page-control-group{
position: absolute;
left:;
right:;
bottom: 20px;
.page-control{
margin: 0 auto;
overflow: hidden;
width: 12*4px+8*2px+16*3px;
li{
width: 12px;
height: 12px;
border: 1px solid #fff;
border-radius: 50%;
float: left;
margin: 0 8px;
box-sizing: border-box;
cursor: pointer;
&.active{
background: #ffffff;
}
}
}
Django打造大型企业官网(五)的更多相关文章
- 超细讲解Django打造大型企业官网
本文为知了课堂黄勇老师讲的<超细讲解Django打造大型企业官网>的笔记. 第一章 Django预热 1.创建virtualenv虚拟环境 2.URL组成部分详解 3.Django介绍 4 ...
- Django打造大型企业官网
第1章 Django预热 1-为什么需要虚拟环境 2-virtualenv创建虚拟环境 3-virtualenvwrapper使用 4-URL组成部分讲解 5-课程准备工作 6-Django介绍 第2 ...
- Django打造大型企业官网(二)
三.项目环境搭建 3.1.创建项目环境和安装包 创建django项目 mkvirtualenv DjangoProject workon DjangoProject pip install -i ht ...
- Django打造大型企业官网(八)
4.16.侧边栏标题和广告位布局完成 templates/news/index.html <div class="sidebar-wrapper"> <div c ...
- Django打造大型企业官网(七)
4.13.新闻列表tab栏布局完成 templates/news/index.html <div class="list-outer-group"> <ul cl ...
- Django打造大型企业官网(六)
4.9.根据轮播图个数修改小圆点数量 src/js/index.js function Banner() { this.bannerWidth = 798; } Banner.prototype.in ...
- Django打造大型企业官网(四)
4.3.轮播图布局和样式 templates/news/index.html <div class="news-wrapper"> <div class=&quo ...
- Django打造大型企业官网(三)
四.前端首页 4.1.导航条实现 (1)templates/new/index.html <!DOCTYPE html> <html lang="en"> ...
- Django打造大型企业官网(一)
一.nvm的安装 (1)下载:nvm1.16 (2)安装完成后添加环境变量 C:\Users\Administrator\AppData\Roaming\nvm (3)修改settings.txt,将 ...
随机推荐
- java将字段映射成另一个字段,关于 接口传参 字段不对应转换
在接口开发中我们经常会遇到一个问题,打个比方,我们的实体类A中有两个字段user和pwd但是接口中需要username和password这怎么办呢,我想到了两种方法:1.新创建一个实体类B或者new一 ...
- 查看外网IP
同一个网络,登录不同网站/APP, 显示的登录IP可能不一样. 输入ip138.com 得到外网IP: 输入:http://www.net.cn/static/customercare/yourip. ...
- oracle char 多位,引发的问题
我在表字有一字段type 类型为char(1),一开始用的还好,后来,char(1)不够用了,于是将char(1),变为char(2). 我做了一个字典表,来对应type,可是,总是查不到数据,最后, ...
- mysql图形化工具获取表的源码
打开数据库,选择要查看的表,点击右键>对象信息>DDL:
- Python re模块 subprocess模块
re模块 内部实现不是Python 而是调用了c的库 re是什么 正则 表达 式子 就是一些带有特殊含义的符号或者符号的组合作用: 对字符串进行过滤 在一对字符串中找到所关心的内容 你就需要告诉计算机 ...
- 洛谷 3953 NOIP2017提高组Day1 T3 逛公园
[题解] 先建反向图,用dijkstra跑出每个点到n的最短距离dis[i] 设f[u][k]表示dis(u,n)<=mindis(u,n)+k的方案数.对于边e(u,v,w),走了这条边的话需 ...
- 集训第四周(高效算法设计)P题 (构造题)
Description There are N<tex2html_verbatim_mark> marbles, which are labeled 1, 2,..., N<te ...
- UVA 227 周期串
题意: 给一个字符串,寻找最短的循环节 如abcabcabcabc以3为周期,也按6和12为周期. 分析: 因为循环节肯定是相等的,所以枚举串长度的所有约数的循环节再判断是否相等即可. 我的方法是枚举 ...
- Ajax的特点
[传统提交方式] 客户端提交请求后,服务器会找到相应的资源进行执行.并将执行结果重新发送给客户端.客户端接收到服务器端的响应会进行重新解释并显示.此时的页面是一个全新的页面. [Ajax提交] 客户端 ...
- [luoguP2709] 小B的询问(莫队)
传送门 个数 1 2 3 4 5 答案 1 4 9 16 25 做差 1 3 5 7 9 显然增加一个数只需要增加 ton[a[x]] << 1 | 1 即可 减去一个数也减去这个 注意 ...