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();
};

效果

原文地址:https://www.cnblogs.com/derek1184405959/p/11055326.html

时间: 2024-08-28 06:32:47

Django打造大型企业官网(五)的相关文章

Django打造大型企业官网(三)

四.前端首页 4.1.导航条实现 (1)templates/new/index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>知了课堂</title> <link rel="stylesheet" href="../../dist/css/index.min

Django打造大型企业官网(七)

4.13.新闻列表tab栏布局完成 templates/news/index.html <div class="list-outer-group"> <ul class="list-tab"> <li class="active" ><a href="#">最新资讯</a></li> <li><a href="#"&g

Django学习笔记 官网教程纠正 代码

原文: Django学习笔记 官网教程纠正 代码 Django学习笔记 4.模板初学中,照书例django book 出现以下异常 raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE) ImportError: Settings cannot be imported, because environmen

谈谈Python之Django搭建企业级官网(第三篇下部)

转载请注明来源地址和原作者(CFishHome) 前沿 上一篇文章我们学习了URL与视图函数的映射.传递参数的三种方式.转换器的简单使用和include函数分层映射管理.接下来这一篇文章着重介绍Path.re_path.include.reverse.redirect函数的使用和自定义URL转换器.学完这些内容,相信我们对URL和视图都会有了一定的了解和认识.为了让每篇文章具有一定的独立性,我决定每篇文章都重新新建一个项目,便于测试和调试. 预备 首先,我们在Pycharm重新新建一个名为boo

Django超细讲解与开发大型企业官网2018

下载:链接: https://pan.baidu.com/s/1qUPJL19p7mIJklFhxwTlLw 提取码: c39q 适用人群 1.想使用Django快速开发网站的.2.想学习后端开发的.4.有Django基础,但是想学习企业级项目实战的. 课程概述 本套课程的目标是从零基础开始,使用Django框架开发企业级的项目.课程知识点全网最详细,项目实战最贴近企业需求.本套课程除了非常详细的讲解Django框架本身的知识点以外,还讲解了web开发中所需要用到的技术,比如有短信验证码.图形验

谈谈Python之Django搭建企业级官网(第三篇上部)

转载请注明来源地址和原作者(CFishHome) 前沿 上一节的学前准备工作和第一个小牛试刀的Django项目学习,让我们对Django开发越来越感兴趣了.正所谓趁热打铁,让我们继续来学习网站开发必备的视图函数和URL映射等知识,跟着步伐一起学习,我相信你会收获很多.噔~噔,新闻播报时间:9月12-9月16有两个超强台风在广东湛江登陆,沿途影响众多城市,包括深圳!!所以很遗憾,前几天打算和舍友去深圳游玩的计划泡汤了,也只能推迟几天前往深圳度中秋.看月亮了~ DEBUG模式 无论是使用命令行还是P

Spring3.0官网文档学习笔记(五)--3.3

3.3 概述 Table 3.1. The bean definition Property Explained in... class Section 3.3.2, "Instantiating beans" name Section 3.3.1, "Naming beans" scope Section 3.5, "Bean scopes" constructor arguments Section 3.4.1, "Dependen

打造最全皮肤,Python采集英雄联盟(LOL)官网数据!

环境: Python3.6.5 Windows pycharm 模块: import requests import jsonpath from urllib.request import urlretrieve import os   思路: 进入LOL官网的游戏资料-资料库后,可以看到所有的英雄都在里面. 当我们点击英雄头像时,会跳转到皮肤界面. 一般人的做法就是,采集到跳转的url,然后再请求该url获取皮肤数据. 思路没错,但是要想一下,如果源代码中没有跳转的url呢? elements

facebook注册不了无法打开官网的解决办法

上周有一个朋友问到我一个问题,问怎么facebook注册不了,facebook官网也无法打开?这个问题不知道有没有人遇到过,以前这个问题也困扰了我挺长时间的,其实想想也挺简单的,由于facebook,youtube,twitter等国外大型网站不符合中国的互联网审核制度,被国内强大的防火墙给屏蔽了.所以本文就分享一下怎么在国内进行facebook注册吧!               如果想要注册facebook,在国内要用到一种VPN的代理工具,连上此软件才可以正常登陆一些国外的网站玩国外的游戏