全屏banner及全屏轮播

一、全屏banner

1、设置网页图片全屏banner

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        .pic {
            width: 100%;
            height: 600px;
            background: url("...") no-repeat center;
        }
    </style>
</head>
<body>
    <div class="banner">
        <div class="pic"></div>
    </div>
</body>
</html>

  二、全屏轮播

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>全屏轮播模板</title>
    <style>
        html,body,head,span,button,div,title {
            margin: 0;
            padding: 0;
        }
        .cont {
            position: relative;
            height: 600px;
        }
        .list{
            position: relative;
        }
        .list div {
            width: 100%;
            height: 600px;
            position: absolute;
            opacity: 0;
            transition: 1s;  /*设置切换时间*/
        }
        .pic1 {
            background: url(img/lbt01.jpg) no-repeat center red;
        }
        .pic2 {
            background: url(img/lbt02.jpg) no-repeat center blue;
        }
        .pic3 {
            background: url(img/lbt03.jpg) no-repeat center yellow;
        }
        .pic4 {
            background: url(img/lbt04.jpg) no-repeat center green;
        }
        .pic5 {
            background: url(img/lbt05.jpg) no-repeat center pink;
        }
        .btns {
            position: absolute;
            z-index: 6;
            left: 50%;
            bottom: 80px;
            margin-left: -170px;
        }
        .btns span {
            float: left;
            width: 60px;
            height: 5px;
            margin-right: 10px;
            background-color: rgba(255,255,255,0.3);
            border-radius: 5px;
        }
        .buttons {
            width: 1180px;
            height: 600px;
            margin: 0 auto;
            position: relative;
        }
        .btn {  /*左右切换按钮样式*/
            position: absolute;
            top: 50%;
            margin-top: -26px;
            width: 32px;
            height: 52px;
            font-size: 30px;
            border-radius: 5px;
            z-index: 6;
            opacity: 0.5;
        }
        .btn-prev {
            left: 0;
        }
        .btn-next {
            right: 0;
        }
        .bgc {
            background-color: white !important;
        }
    </style>
</head>
<body>
    <div class="cont">
        <div class="list">
            <div class="pic1" data-index=0 style="opacity: 1; z-index: 2;"></div>
            <div class="pic2" data-index=1></div>
            <div class="pic3" data-index=2></div>
            <div class="pic4" data-index=3></div>
            <div class="pic5" data-index=4></div>
        </div>
        <div class="btns">
            <span class="bgc"></span>
            <span></span>
            <span></span>
            <span></span>
            <span></span>
        </div>
        <div class="buttons">
            <button class="btn btn-prev"> < </button>
            <button class="btn btn-next"> > </button>
        </div>
    </div>

    <script>
        var btn = document.getElementsByClassName("btn");
        var imgs = document.querySelectorAll(".list div");
        var btns = document.querySelectorAll(".btns span");
        var cont = document.getElementsByClassName("cont")[0];
        var indexes, timer = null;
        for(let i=0; i<btns.length; i++){
            btns[i].onmouseover = function(){  // 给所有下面的白色线条添加一个鼠标经过事件
                animate(i);
            }
        }

        btn[0].onclick = function(){  // 上一张按钮
            indexes = currentPage();
            if(indexes == 0) indexes=5;
                indexes--;
            animate(indexes);
        }

        btn[1].onclick = next;

        function next(){  // 下一张按钮
            indexes = currentPage();
            if(indexes == 4) indexes = -1;
                indexes++;
           animate(indexes);
        }

        function animate(i){  // 动画函数
            for(let j = 0; j<imgs.length; j++){
                imgs[j].style.opacity = 0;
                imgs[j].style.zIndex = 1;
                btns[j].classList.remove("bgc");
            }
            imgs[i].style.opacity = 1;
            imgs[i].style.zIndex = 2;
            btns[i].classList.add("bgc");
        }

        function currentPage() { // 返回当前页面
            for(var i = 0; i<imgs.length; i++){
                 if(imgs[i].style.zIndex == 2){
                    return imgs[i].dataset.index;
                 }
            }
        }

        timer = setInterval(next,3000); // 设置自动播放
        cont.onmousemove = function(){  // 鼠标移入时停止自动播放
            clearInterval(timer);
        }
        cont.onmouseout = function(){   // 鼠标移出时又开始播放
            timer = setInterval(next,3000);
        }
    </script>
</body>
</html>

  

原文地址:https://www.cnblogs.com/litings/p/8306610.html

时间: 2024-08-09 19:36:43

全屏banner及全屏轮播的相关文章

Swiper实现全屏视觉差轮播

Swiper作为当代流行的js框架,非常受到青睐,这里演示swiper在pc端全屏视觉轮播的效果,这也是pc端常用的一种特性 一  以教师节为主题的一个全屏轮播 1 首先加载插件,需要用到的文件有swiper.min.js和swiper.min.css文件以及jquery-1.11.3.min.js官网都有(可以下载完整的压缩文件) <link rel="stylesheet" href="css/swiper.min.css" > <script

轮播图淡入淡出的js和jquery的效果

图片轮播(淡入淡出)--js原生和jquery实现 图片轮播有很多种方式,这里采用其中的 淡入淡出形式 js原生和jQuery都可以实现,jquery因为封装了很多用法,所以用起来就简单许多,转换成js使用,其实也就是用js原生模拟出这些用法. 但不管怎样,构造一个最基本的表现层是必须的简单的图片轮播一般由几个部分构成. 对于淡入淡出式 1.首先是个外围部分(其实也就是最外边的整体wrapper) 2.接着就是你设置图片轮播的地方(也就是一个banner吧) 3.然后是一个图片组(可以用新的di

ViewPager实现无限轮播踩坑记

最近笔者想通过ViewPager来实现一个广告Banner,并实现无限轮播的效果,但是在这个过程中踩了不少的坑,听我慢慢道来.如果大家有遇到和我一样的情况,可以参考我的解决方法,没有那就更好,如果针对我的解决方法,有啥更好的方案,欢迎和我分享 使用ViewPager实现无限轮播代码 MainActivity代码 public class MainActivity extends AppCompatActivity { private ViewPager mViewPager; private T

Android 轮播图

package com.example.carson_ho.android_banner; import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.view.View;import android.widget.ImageView;import android.widget.Toast; import com.bumptech.g

纯HTML/CSS/JS实现淘宝、京东两种轮播图

最近刚好重新看了一下前端的内容,在做网页banner的时候实现轮播图上遇到了问题. 本着不想用轮子的心态,在网上查了半天很多实现有点问题(逼死强迫症 于是对着淘宝和京东首页两种不同的轮播图做了一个实现. 循环式(淘宝首页) 大概思路: 为了实现无限循环,在第一张图前放一个最后一张图,最后一张图后面放一个第一张图 <li><img src="image3.jpg" alt=""></li> <li><img src

升级版的全屏轮播图

具备的功能: 1.左右自动轮播 2.鼠标悬停在图片上时,停止轮播,移除时,开始轮播 3,点击导航圆点,移到响应位置图片,同时导航圆点有0.3秒的显示特效 4.鼠标移到屏幕左右时,出现线性渐变特效,点击,会左右移到图片 最终结果图: 完整代码: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title>

实现全屏轮播,并且轮播div中的文字盒子一直自动垂直居中

效果如下: 直接上代码了: 说明:轮播图基于swiper.js,自行下载.css在最后 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.

淘宝店铺装修如何实现全屏轮播

淘宝店装移植有一个神秘的模块,那就是—全屏轮播,这个神奇的模块,能提高店铺的档次,给与顾客视觉冲击,提升顾客印象但是由于淘宝常规用户不支持CSS(用来定义网页样貌的能力),所以我们无法用简单的div+CSS来做出属于自己的全屏轮播强大的装修师们几经研究,终于摆脱了CSS的束绷,结合淘宝的轮播组件,单靠DIV代码就实现了全屏轮播(有缺点) 那么.不要CSS,我们怎么实现全屏轮播呢? 首先我要告诉大家全屏轮播的核心CSS属性—position:absolute 第一节:核心属性 position :

jquery全屏背景轮播切换的登录页

很大气漂亮的注册登录页面模板,带背景全屏轮播JS特效,基于jQuery实现,可左右按钮实现背景全屏切换,全屏效果是基于背景图片平铺,插件支持自动切换播放. 演示    下载 <!DOCTYPE html> <html> <head> <title>jquery带全屏背景图片轮播切换的注册登录页面-素材吧</title> <meta name="keywords" content="jQuery背景全屏轮播,JS