轻松实现javascript,JavaScript简单实现鼠标移动切换图片的方法
分类:web前端

基于javascript实现图片左右切换效果,javascript切换

本文实例介绍了javascript实现图片左右切换效果的详细代码,分享给大家供大家参考,具体内容如下

效果图:

图片 1

具体代码:

<html>
  <head>
    <title>JS图片左右切换效果</title>
    <meta charset="utf-8"/>
    <style type="text/css">
      *{
        margin:0;
        padding:0;       
      }    

      .images-scroll{
        border:1px solid #CCC;
        margin:100px auto;
        width:300px;
        height:200px;
        position:relative;
      }  

      .images-scroll ul{
        list-style:none;
      }

      .images-scroll li{
        float:left; 
        display:none;      
      }

      .images-scroll .active{
        display:block;
      }

      .images-scroll a{

      }

      .images-scroll img{
        width:300px;
        height:200px;
        border:none;
      }            

      .images-scroll .left-scroll{
        position:absolute;
        top:40%;
        left:-40px;
        opacity:0;
        background:url("images/bg_direction_nav.png");
        background-repeat:no-repeat;
        background-position:0px 0px;
        height:27px;
        width:27px;
        cursor:pointer;
      }

      .images-scroll .right-scroll{
        position:absolute;
        top:40%;
        opacity:0;
        right:-40px;
        background:url("images/bg_direction_nav.png");
        background-repeat:no-repeat;
        background-position:-30px 0px;
        height:27px;
        cursor:pointer;
        width:27px;       
      }  

      .images-scroll .right-scroll:hover{
        background-color:transparent;
      }

    </style>
    <script src="jquery-1.8.2.js"></script>
  </head>
  <body>

    <div id="images-scroll" class="images-scroll">
      <ul>
        <li class="active"><a href=""><img src="images/1.jpg" alt="图片 2"></a></li>
        <li><a href=""><img src="images/2.jpg" alt="图片 3"></a></li>
        <li><a href=""><img src="images/3.jpg" alt="图片 4"></a></li>
        <li><a href=""><img src="images/4.jpg" alt="图片 5"></a></li>
      </ul>


    </div>
    <script type="text/javascript">  

      $("#images-scroll").mouseover(function(){
        $("#left-scroll").animate({left: '10px',opacity:'1',},400);
        $("#right-scroll").animate({right: '10px',opacity:'1',},400);
      })
      $("#images-scroll").mouseleave(function(){
        $("#left-scroll").animate({left: '-40px',opacity:'0',},400);
        $("#right-scroll").animate({right: '-40px',opacity:'0',},400);        
      })

      imgScroll=setInterval("runScroll()",3000);
      var last_idx=$("#images-scroll ul li").index($("#images-scroll ul li:last"));
      function runScroll(){          
        var idx=$("#images-scroll ul li").index($("#images-scroll ul .active")[0]);
        $("#images-scroll li").eq(idx).removeClass("active").hide();
        idx+=1;
        if(idx%(last_idx+1)==0){
          idx=0;
        }
        $("#images-scroll li").eq(idx).addClass("active").show();
      }
      $("#left-scroll").click(function(){
        var idx=$("#images-scroll ul li").index($("#images-scroll ul .active")[0]);
        $("#images-scroll li").eq(idx).removeClass("active").hide();
        idx-=1;
        if(idx==-1){
          idx=last_idx;
        }
        $("#images-scroll li").eq(idx).addClass("active").show();
      })
      $("#right-scroll").click(function(){
        runScroll();
      })     
    </script>

  </body>
</html>

以上就是本文的全部内容,希望对大家学习javascript程序设计有所帮助。

轻松实现javascript图片轮播特效,轻松实现javascript

本文实例介绍了javascript图片轮播特效的详细代码以及实现思路,分享给大家供大家参考,具体内容如下

还是先来看一看效果图:

图片 6

具体代码:

一、HTML代码分析

<body> 
  <div class="dota"> 
    <ul id="content"> 
      <li><a href="#"><img src="images/1.jpg"/></a></li> 
      <li><a href="#"><img src="images/2.jpg"/></a></li> 
      <li><a href="#"><img src="images/3.jpg"/></a></li> 
      <li><a href="#"><img src="images/4.jpg"/></a></li> 
      <li><a href="#"><img src="images/5.jpg"/></a></li> 
    </ul> 
    <ul id="indicator"> 
      <li class="current"><a href="#">A版是一款手机DOTA应用,它涵盖了</a></li> 
      <li><a href="#">A版是一款手机应用,它涵盖了</a></li> 
      <li><a href="#">A版是一款手机应用,它涵盖了</a></li> 
      <li><a href="#">A版是一款手机应用,它涵盖了</a></li> 
      <li><a href="#">A版是一款手机应用,它涵盖了</a></li> 
    </ul> 
  </div> 
</body> 

此效果的层次结构比较清楚:

  1. class为data的div是最外层的容器,可以用来控制整个效果图显示的位置。

  2. id为content的ul用来存放左侧滚动的图片。

  3. id为indicator的ul用来显示右侧的指示栏。

二、CSS代码

*{margin: 0; padding: 0;} 

    img{ 
      border:0; 
    } 

    .dota{ 
      width:570px; 
      height: 230px; 
      margin:100px auto; 
      position: relative; 
      overflow: hidden; 
    } 

    .dota #content{ 
      float: left; 
      list-style: none; 
      position: absolute; 
      width:380px; 
      height:230px; 
    } 
    .dota #content img{ 
      width:380px; 
      height:230px;  
    } 
    .dota #indicator{ 
      float: right; 
      list-style: none; 
      width:180px; 
      height:220px; 
      padding: 5px; 
      background-color: #100F13; 
    } 
    .dota #indicator li{ 
      width: 180px; 
      height: 44px; 
      background: url(images/anniu.png) 0 -44px; 
    } 

    .dota #indicator li.current{ 
      background-position: 0 0; 
    } 

    .dota #indicator li a{ 
      display: block; 
      width: 160px; 
      height: 34px; 
      padding: 5px 0 5px 25px; 
    } 

    .dota #indicator li a:link , .dota #indicator li a:visited{ 
      text-decoration: none; 
      color: #686477; 
      font: 12px/145% "宋体"; 
    } 

这里,我对indicator中li的代码进行说明:
.dota #indicator li中的css代码就是设置右侧指示栏中的每一项,注意到,这里使用了background属性,也就是说li的背景是一张图片。准备好的图片如下:

图片 7

这张准备好的图片大小为 180 * 88, 而.dota #indicator li中的background属性设置的position属性大小为 0 -44px, 即截取的图片的下半部分;所以indicator中所有的背景图片显示的是下半部分比较暗的部分; 而.dota #indicator li.current 的position属性大小为 0 0,所以默认情况下indicator的第一个显示高亮,其余的显示为暗黑的那部分。然后通过JQuery代码控制current属性作用在 "谁" 身上来切换选中状态。

三、JQuery代码

<script type="text/javascript"> 

    $(function(){ 

      var nowImage = 0; 

      /* 为定时动画服务 */ 
      $(".dota #content li").first().clone().appendTo($(".dota #content")); 

      var timer = setInterval(autoAnimate, 1500); 

      $(".dota").mouseenter(function(){ 
        clearInterval(timer); 
      }).mouseleave(function(){ 
        timer = setInterval(autoAnimate, 1500); 
      });; 

      $(".dota #indicator li").mouseenter(function(){ 
        $(this).addClass("current").siblings().removeClass("current"); 
        nowImage = $(this).index(); 
        /*stop() 可以立刻清楚以前的动画,防止动画叠加*/ 
        $(".dota #content").stop().animate({"top": -230 * nowImage}, 1000); 
      }); 

      function autoAnimate(){ 
        if(nowImage == 4){ 
          nowImage = 0; 

          $(".dota #indicator li").eq(nowImage).addClass("current").siblings().removeClass("current"); 
          $(".dota #content").stop().animate({"top":-230 * 5}, 1000,function(){ 
            $(".dota #content").css("top",0); 
          }); 
        } 
        else{ 
          nowImage++; 
          $(".dota #content").stop().animate({"top": -230 * nowImage}, 1000); 
          $(".dota #indicator li").eq(nowImage).addClass("current").siblings().removeClass("current"); 
          } 
      } 

    }); 

  </script> 

以上就是轻松实现javascript图片轮播特效的详细代码,希望对大家的学习有所帮助。

原生js实现图片层叠轮播切换效果,js图片层叠切换

本文实例介绍了js焦点图片层叠轮播切换滚动效果,分享给大家供大家参考,具体内容如下

效果图:

 图片 8

功能描述:

  •   自定义图片尺寸;
  •   每隔一段时间自动滚动图片;
  •   每次动画执行的时候改变图片的位置,宽高以及其它属性也要跟随着变化;
  •   鼠标移上图片,显示当前图片的详细信息;
  •   点击按钮向前向后滚动;

详细代码:   html代码:

<!DOCTYPE html>
<!-- saved from url=(0062)http://x1.xiuimg.com/style/xiu/woxiu/v1/tpl/topic/xiuxuan.html -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title></title>
<style type="text/css">
 *{margin:0px; padding:0px;font-family:"Microsoft YaHei"}
 ol,ul{list-style:none;}
 cite,em,i{font-style:normal} 
 * html .clearfix { height: 1%; }
 .clearfix { display: block; }
 .myclearfix:after { clear:both; visibility:hidden;}
 .myclearfix { display: block; _display:inline-block; overflow:hidden;} 

 #largerImages{position:relative;width:1000px;margin:0 auto;height:520px;overflow:hidden;}
 #largerImages li{box-shadow:1px 1px 12px rgba(200, 200, 200, 1);width:368px;height:368px; position:absolute;top:10px;overflow:hidden;color:#fff;}
 #largerImages li .cover{background-color:#333;opacity:0.5;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50);height:100%;width:100%;display:block;position:absolute;top:0px;}
 #largerImages img{border:0px;width:100%;height:100%;}
 #largerImages .previous{left:13%;}
 #largerImages .next{left:53%;}
 #largerImages .previous,#largerImages .next{cursor:pointer; position:absolute;z-index:100; top:25%;height:60px;line-height:60px;width:30px;color:#fff;text-align:center;}
 #largerImages .previous span,#largerImages .next span{position:absolute;top:0px;left:0px;height:100%;width:100%;display:block;background-color:#000;opacity:0.4;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=40);}
 #largerImages .previous em,#largerImages .next em{height:100%;width:100%;display:block;position:absolute;top:0px;left:0px;font-size:26px; font-family: "宋体";}
 #largerImages li span,#largerImages li em{position:absolute;left:0px;width:100%;height:30px;line-height:30px; bottom:0px;text-align:center;display:block;color:#fff;}
 #largerImages li span{background-color:#000;opacity:0.5;filter: progid:DXImageTransform.Microsoft.Alpha(opacity=50);font-size:12px;}

</style>
</head>
<body>

<ul id = "largerImages">
 <p class="previous"> <em><</em></p>
 <p class="next"> <em>></em></p>
 <li><i class="cover"> </i>
  <a href="#"><img src="http://www.bkjia.com/uploads/allimg/160205/011222K03-1.jpg"></a>
  <p class="tab_name"> <em>主播昵称</em></p>
 </li>
 <li><i class="cover"> </i>
  <a href="#"><img src="http://www.bkjia.com/uploads/allimg/160205/011222J25-2.jpg"></a>
  <p class="tab_name"> <em>主播昵称</em></p>
 </li>
 <li><i class="cover"> </i>
  <a href="#"><img src="http://www.bkjia.com/uploads/allimg/160205/011222K03-1.jpg"></a>
  <p class="tab_name"> <em>主播昵称</em></p>
 </li>
 <li><i class="cover"> </i>
  <a href="#"><img src="http://www.bkjia.com/uploads/allimg/160205/011222J25-2.jpg"></a>
  <p class="tab_name"> <em>主播昵称</em></p>
 </li>
 <li><i class="cover"> </i>
  <a href="#"><img src="http://www.bkjia.com/uploads/allimg/160205/011222K03-1.jpg"></a>
  <p class="tab_name"> <em>主播昵称</em></p>
 </li>
</ul>

<script type="text/javascript" src="../../lib/seajs/sea.js"></script>
<script type="text/javascript" src="../../lib/base/1.0.x/base.js"></script>
<script type="text/javascript">
 seajs.use(['lib/jquery/1.11.x/index.js','_example/rotateBox/index.js'],function($,carousel) {
  carousel.init({
   wapper: $('#largerImages'),

   //所有图片以此来按比例定义宽高
   imgWidth: 450,
   imgHeight: 300,

   spacing: {
    left: 60, //每张图片左边距离相差多少
    top: 30, //每张图片顶部距离相差多少
    width: 60, //每张图片宽度相差多少
    height: 60 //每张图片高度相差多少
   }
  });
 });
</script>
</body>
</html>

 

js 代码:

define(function(require, exports, module) {
 'use strict';
 var $ = require('lib/jquery/1.11.x/index.js');

 var carousel = {

  _initData:false, //判断动画是否执行完毕

  init: function(options) {
   var t = this;
   t._wapper = options.wapper;
   t._grids = t._wapper.find('li');
   t._gridsWidth = options.imgWidth;
   t._gridsHeight = options.imgHeight; 
   t._spacing = options.spacing;

   //取居中图片
   t._middle = t._grids.length % 2 == 0 ? t._grids.length / 2 : parseInt(t._grids.length / 2);

   //存放各图片参数
   t._arr = {
    left: [],
    top: [],
    zIndex: [],
    width: [],
    height: []
   }

   if ( !t._initData ) {
    var interval;
    interval = setInterval(function(){
     $('.previous').click();
    },10000);
   }

   t._largerImages();
   t._reposition();
   t._mouseEnter(t._grids) //鼠标移动上去显示主播昵称
  },
  //初始化定位:
  _largerImages: function() {
   var t = this;

   var front = t._middle;
   var avtive = t._middle;
   var last = t._grids.length;

   t._grids.each( function(i, img) {

    if (i == t._middle) {

     t._grids.eq(i).css({
      zIndex: 99,
      top: 0,
      left: t._spacing.left * i,
      height: t._gridsHeight,
      width: t._gridsWidth
     }); 

    } else if ( i < t._middle ) {

     t._grids.eq(i).css({
      zIndex: i,
      top: t._spacing.top * front,
      left: t._spacing.left * i,
      height: t._gridsHeight - t._spacing.height * front,
      width: t._gridsWidth - t._spacing.width * front
     });

     front--;

    } else {

     last --;

     t._grids.eq(last).css({
      zIndex: i,
      top: t._spacing.top * avtive,

      left: t._spacing.left * last + t._spacing.width * avtive,
      height: t._gridsHeight - t._spacing.height * avtive,
      width: t._gridsWidth - t._spacing.width * avtive
     });

     avtive --;
    };
   });
  },
  //翻页动画
  _reposition: function() {
   var t = this;

   //把各属性值传到数组里面
   t._grids.each( function(i,img) {
    t._arr.left.push(t._grids.eq(i).position().left);
    t._arr.top.push(t._grids.eq(i).position().top);
    t._arr.width.push(t._grids.eq(i).width());
    t._arr.height.push(t._grids.eq(i).height());
    t._arr.zIndex.push(t._grids.eq(i).css('z-index'));
   });

   //向前翻页
   $('.previous').bind('click',function() {
    if ( !t._initData && t._arr.left.length != 0) {

     t._initData = true;

     //重新获取选择器
     var grids = t._wapper.find('li'); 

     for (var i = 1; i < grids.length ; i ++) {

      grids.eq(i).animate({
       zIndex: t._arr.zIndex[i - 1],
       left: t._arr.left[i - 1],
       top: t._arr.top[i - 1], 
       width: t._arr.width[i - 1], 
       height: t._arr.height[i - 1],
      },200,
      function() {
       t._initData = false;
       grids.find('i').addClass('cover');
       grids.eq(t._middle + 1).find('i').removeClass('cover');
      });
     };

     grids.eq(0).animate({
      left: t._arr.left[ grids.length - 1], 
      top: t._arr.top[ grids.length - 1], 
      width: t._arr.width[ grids.length - 1], 
      height: t._arr.height[ grids.length - 1],
      zIndex: t._arr.zIndex[ grids.length - 1]
     },200,
     function(){
      $(this).appendTo(t._wapper);
     });

    }
   });
   //向后翻页
   $('.next').bind('click',function() {
    if ( !t._initData && t._arr.left.length != 0) {

     t._initData = true;

     //重新获取选择器
     var grids = t._wapper.find('li'); 

     for (var i = 0; i < grids.length - 1; i ++) {
      grids.eq(i).animate({
       left: t._arr.left[i + 1],
        top: t._arr.top[i + 1], 
        width: t._arr.width[i + 1], 
        height: t._arr.height[i + 1],
        zIndex: t._arr.zIndex[i + 1]
        },200,function() {
        t._initData = false;
       });
     };
     grids.eq(grids.length - 1).animate({
      left: t._arr.left[0], 
      top: t._arr.top[0], 
      width: t._arr.width[0], 
      height: t._arr.height[0],
      zIndex: t._arr.zIndex[0]
     },200,
     function(){
      $(this).prependTo(t._wapper);
      grids.find('i').addClass('cover');
      grids.eq(t._middle - 1).find('i').removeClass('cover');
     });

    }
   });
  },
  //鼠标进入图片效果
  _mouseEnter: function(grids) {
   grids.each(function(i){
    $(this).mouseenter(function() {
     $(this).find('.tab_name').animate({
      bottom:0,opacity: 'show'
     },200);
    });
    $(this).mouseleave(function() {
     $(this).find('.tab_name').animate({
      bottom:-50,opacity: 'hide'
     },200);
    });
   });
  },
 };

 return carousel;
});

 以上就是本文的全部内容,希望对大家的学习有所帮助。

JavaScript简单实现鼠标移动切换图片的方法,javascript切换

本文实例讲述了JavaScript简单实现鼠标移动切换图片的方法。分享给大家供大家参考,具体如下:

<title>JavaScript切换图片</title>
<script>
function showDaTu(src){
document.getElementById("defaultImg").src=src;
}
</script>
<img src="images/wall1.jpg" id="defaultImg">
<br><br><br>
<img src='images/wall_s1.jpg' onmouseover="showDaTu('images/wall1.jpg')">
<img src='images/wall_s2.jpg' onmouseover="showDaTu('images/wall2.jpg')">
<img src='images/wall_s3.jpg' onmouseover="showDaTu('images/wall3.jpg')">
<img src='images/wall_s4.jpg' onmouseover="showDaTu('images/wall4.jpg')">
<br>因图片较大,请等待图片加载完成……然后鼠标放小图上就会切换了。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

您可能感兴趣的文章:

  • 一段非常简单的让图片自动切换js代码
  • css图片切换效果代码[不用js]
  • 最简单的js图片切换效果实现代码
  • 简单的实现点击箭头图片切换的js代码
  • js图片自动切换效果处理代码
  • 非常漂亮的JS+CSS图片幻灯切换特效
  • 用html+css+js实现的一个简单的图片切换特效
  • jQuery图片切换插件jquery.cycle.js使用示例
  • js实现网页随机切换背景图片的方法
  • js动态切换图片的方法

本文实例介绍了javascript实现图片左右切换效果的详细代码,分享给大家供大家参考,具体...

您可能感兴趣的文章:

  • js 图片轮播(5张图片)
  • 原生javascript实现图片轮播效果代码
  • 带左右箭头图片轮播的JS代码
  • 简单的js图片轮换代码(js图片轮播)
  • js图片自动轮播代码分享(js图片轮播)
  • JS实现简易图片轮播效果的方法
  • 原生js和jquery实现图片轮播特效
  • 原生js和jquery实现图片轮播淡入淡出效果

本文实例介绍了javascript图片轮播特效的详细代码以及实现思路,分享给大家供大家参考,...

您可能感兴趣的文章:

  • js 图片轮播(5张图片)
  • 原生javascript实现图片轮播效果代码
  • 最简单的js图片切换效果实现代码
  • 带左右箭头图片轮播的JS代码
  • 简单的js图片轮换代码(js图片轮播)
  • js图片自动轮播代码分享(js图片轮播)
  • 用html+css+js实现的一个简单的图片切换特效
  • js实现支持手机滑动切换的轮播图片效果实例
  • js支持键盘控制的左右切换立体式图片轮播效果代码分享
  • js图片轮播手动切换效果

本文实例介绍了js焦点图片层叠轮播切换滚动效果,分享给大家供大家参考,具体内容如...

您可能感兴趣的文章:

  • javascript DIV跟随鼠标移动
  • js图片跟随鼠标移动代码
  • JavaScript检测鼠标移动方向的方法
  • javascript实现图片跟随鼠标移动效果的方法
  • js实现文字跟随鼠标移动而移动的方法
  • JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
  • js+html+css实现鼠标移动div实例
  • js鼠标点击按钮切换图片-图片自动切换-点击左右按钮切换特效代码
  • js实现使用鼠标拖拽切换图片的方法
  • js动态切换图片的方法
  • JS鼠标滑过图片时切换图片实现思路

本文实例讲述了JavaScript简单实现鼠标移动切换图片的方法。分享给大家供大家参考...

本文由10bet手机官网发布于web前端,转载请注明出处:轻松实现javascript,JavaScript简单实现鼠标移动切换图片的方法

上一篇:没有了 下一篇:解压缩unzip命令详解及实例,CentOS下软件安装方法总结
猜你喜欢
热门排行
精彩图文