jQuery实现简单的图片淡出淡出效果

整体思路:

1.实现页面布局,设置css样式

2.用jQuery获取需要用到的变量

3.用jQuery为两个按钮绑定事件

一.页面布局:

<div class="d1">
   //随便在网上找一张图片放入img中//
    <img src="https://dummyimage.com/900x400/0000ff/ff"  class="c1 c2">
    <div class="d2">
    <input type="button" value="<-" id="b1">
    <input type="button" value="->" id="b2">
    </div>
</div>

 <style>
        body{
            margin: 0 0 0 0;
            height: 1000px;
            width: 100%;

        }
        .d1{
            position: absolute;
            width: 100%;
            height: 500px;
            top: 50%;
            margin-top: -250px;
        }
        .d2{
             margin-left: 950px;
        }
        .d1 img{
            margin-left: 50px;
            position: relative;
        }
        .c1{

            display: block;
            padding-left: 500px;
        }
    </style>

css布局

我的css布局仅仅做了居中,各位可以做的更加美观性

二.jQuery获取需要用到的变量

 //imgList中放入你要加入的图片,记得要加入在div中定义的起始图片//
var imgList=[‘https://dummyimage.com/900x400/0000ff/ff‘,‘https://dummyimage.com/900x400/00/ff‘,‘https://dummyimage.com/900x400/ff0000/ff‘];
    var $imgEle=$(‘img‘);//获取div中的img
    var nowSrc=imgList.indexOf($imgEle[0].src);//获取起始图片的索引值,后面函数要用到
//获取两个按钮
    var $b1Ele=$(‘#b1‘);
    var $b2Ele=$(‘#b2‘);

三.用jQuery为两个按钮绑定事件

首先写$b1El1的函数:

function f1(){
       //先让当前图片淡出,时间为0.5毫秒
       $imgEle.fadeOut(500);
       //进行判断,如果索引值为0,让索引变成列表的最大值
       if(nowSrc===0){
           nowSrc=imgList.length-1;
       }
       //索引值不为0,进行--
       else {
           nowSrc--;
       }
      //因为我淡出的时间设置为0.5毫秒,所以我设置计时器,让下面的代码0.5毫秒后启动
       t=setTimeout(function () {
        //更换图片的src
           $imgEle.attr(‘src‘,imgList[nowSrc]);
        //图片淡入,时间为0.5毫秒
           $imgEle.fadeIn(500);
       },500);
    }

为$b1El1绑定函数:

$b1Ele.on(‘click‘,f1);

同理可以写出按钮2的函数,并进行绑定

 function f2(){
       $imgEle.fadeOut(500);
       console.log(nowSrc);
       if(nowSrc===imgList.length-1){
           nowSrc=0;
       }
       else {
           nowSrc++;
       }
       t2=setTimeout(function () {
           $imgEle.attr(‘src‘,imgList[nowSrc]);
       $imgEle.fadeIn(500);
       },500);
        t2=null
    }
    $b2Ele.on(‘click‘,f2);

下面是整体代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!--设置css样式-->
    <style>
        body{
            margin: 0 0 0 0;
            height: 1000px;
            width: 100%;

        }
        .d1{
            position: absolute;
            width: 100%;
            height: 500px;
            top: 50%;
            margin-top: -250px;
        }
        .d2{
             margin-left: 950px;
        }
        .d1 img{
            margin-left: 50px;
            position: relative;
        }
        .c1{

            display: block;
            padding-left: 500px;
        }
    </style>

    <script src="jQuery.js"></script>
</head>
<body>
<div class="d1">
    <img src="https://dummyimage.com/900x400/0000ff/ff"  class="c1 c2">
    <div class="d2">
    <input type="button" value="<-" id="b1">
    <input type="button" value="->" id="b2">
    </div>
</div>
<script>
    var imgList=[‘https://dummyimage.com/900x400/0000ff/ff‘,‘https://dummyimage.com/900x400/00/ff‘,‘https://dummyimage.com/900x400/ff0000/ff‘];
    var $imgEle=$(‘img‘);
    var nowSrc=imgList.indexOf($imgEle[0].src);
    var $b1Ele=$(‘#b1‘);
    var $b2Ele=$(‘#b2‘);

    function f1(){
       $imgEle.fadeOut(500);
       console.log(nowSrc);
       if(nowSrc===0){
           nowSrc=imgList.length-1;
       }
       else {
           nowSrc--;
       }
       t=setTimeout(function () {
           $imgEle.attr(‘src‘,imgList[nowSrc]);
       $imgEle.fadeIn(500);
       },500);

    }
    function f2(){
       $imgEle.fadeOut(500);
       console.log(nowSrc);
       if(nowSrc===imgList.length-1){
           nowSrc=0;
       }
       else {
           nowSrc++;
       }
       t2=setTimeout(function () {
           $imgEle.attr(‘src‘,imgList[nowSrc]);
       $imgEle.fadeIn(500);
       },500);
        t2=null
    }
    $b1Ele.on(‘click‘,f1);
    $b2Ele.on(‘click‘,f2);
</script>
</body>
</html>

全部代码

原文地址:https://www.cnblogs.com/98WDJ/p/10679228.html

时间: 2024-11-29 03:02:04

jQuery实现简单的图片淡出淡出效果的相关文章

[JQuery]用InsertAfter实现图片走马灯展示效果2——js代码重构

写在前面 前面写过一篇文章<[JQuery]用InsertAfter实现图片走马灯展示效果>,自从写过那样的也算是使用面向对象的写法吧,代码实在丑陋,自从写过那样的代码,就是自己的一块心病,总感觉不完美,心里一直惦记着那件事,也是在我写过那篇文章之后,没多久,在博客园首页看到了一篇文章较复杂js的书写格式,这里的代码看着比较简介,就想着抽时间将之前的那段js代码进行重构.说做就做,不想一想起之前写过那样的代码,心里就有疙瘩.所以也就有了这篇文章. $.extend 在开始重构之前,需要先学习一

基于jquery鼠标点击图片翻开切换效果

基于jquery鼠标点击图片翻开切换效果是一款基于jQuery+CSS3实现的点击图片切换特效.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class="container"> <img src="images/1.jpeg" alt="1" /> <img src="images/2.jpeg" alt="2" /> <img s

简单的图片轮播效果

用js代码来实现一个简单的图片轮播效果 鼠标移入图片后显示左右箭头按钮,点击就可以实现图片的切换. 以下分别是html代码和js代码,欢迎批评和讨论! <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>图片轮播</title> <style> *{padding:0px; margin:0px;

jquery实现简单的导航栏切换效果($(this).index)

一个简单的导航栏切换效果的制作,主要通过索引值和jquery的siblings()来实现 html代码: <div class="container"> <ul class="top-nav"> <li class="nav">html</li> <li class="nav">css</li> <li class="nav"&g

[JQuery]用InsertAfter实现图片走马灯展示效果

写在前面 最近一个搞美工的朋友让我给他写一个图片轮播的特效. 需求: 图片向左循环滚动. 图片滚动到中间高亮显示,并在下方显示照片人物对应的信息. 鼠标悬停止滚动. 鼠标离开开始滚动. 单击图片,图片移到中间并高亮显示. 分析 思考一 首先想到的是图片轮播的插件,找了几款,并不是太满意,就放弃了. 思考二 然后想到使用jquery的animate()方法,对这个不熟悉,也放弃了. jQuery animate() 方法用于创建自定义动画. 语法 $(selector).animate({para

HTMl+CSS+JQuery实现简单的图片滑动切换

1 <head> 2 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 3 <title>t图片的滑动</title> 4 <meta charset="utf-8" /> 5 <style type="text/css" > 6 *{ 7 margin:0; 8 pa

css3简单实现图片模糊过滤效果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <meta http-equiv="Cont

使用jQuery实现简单的图片轮播

<!--先把样式定义好--> <style> *{ box-sizing: border-box; margin: 0px; padding: 0px; } body{ background-color: lightgray; } .MarginDiv{ border: 1px solid green; width: 1320px; height: 245px; overflow: hidden; margin: 0px auto; position: relative; } .M

使用Qt实现简单的图片预览效果 good

http://www.cnblogs.com/appsucc/archive/2012/02/28/2371506.html Qt之实现工具箱界面程序 http://www.cnblogs.com/appsucc/archive/2013/03/04/2942903.html#3406562