• jQuery案例(底部导航图片切换)


            作为一个代码新手,最近我又学习了一些jQuery的相关知识,所以今天就做了一个小案例。如下:

     

                      

            通过点击图标切换并点亮图标,现在我们就开始做吧 ,首先说一下思路:     

           我是通过事件委托的方式做的,大致思路就是把所有的图片变成未选中的状态,然后点击图片触发状态,点击事件结束。

           就是通过修改路径名实现图片的替换,取相同的地方和不同的地方划分成两部分,图片是根据路径及图片名字显示的,

           通过修改图片后一部分的内容,也就实现了图片的切换。

                    

            一,现做一个简单的布局,这个就不细说了

                   

     <ul  id="bottom">
          <li class="activeClass" index="1">
               <img src="img/nav_init_1.jpg">
               <span>首页</span>
          </li>
          <li index="2">
              <img src="img/nav_init_2.jpg">
              <span>金融</span>
          </li>
          <li index="3">
              <img src="img/nav_init_3.jpg">
              <span>生活</span>
          </li>
          <li index="4">
              <img src="img/nav_init_4.jpg">
              <span>健康</span>
          </li>
          <li index="5">
               <img src="img/nav_init_5.jpg">
               <span>我的</span>
          </li>
     </ul>

       

        二,接着开始实现jq功能(前提:要引入jq文件)

              这个分为两步:

                       第一步:把全部路径图片变成灰色

                       第二步:帮当前点击的图标点亮  

    $('ul').on("click","li",function(event){ 
              //事件委托      
              var preindex=$("li.activeClass").attr("index");
               // console.log(preindex);
              //字体变颜色
      
     $(this).addClass("activeClass").siblings().removeClass("activeClass");
    
               if(event.target.tagName === 'IMG'){
    
                    var nodes = $('#bottom li img');
                    // console.log(nodes);
    
                    for(var i=0; i<nodes.length; i++){
                      //把所有的路径全部变成未选中的图标
                        nodes[i].src = nodes[i].src.replace(/.jpg|_selected.jpg/,'.jpg');
                    }
    
                    event.target.src = event.target.src.replace(/.jpg|_selected.jpg/,'_selected.jpg');
                }}
        )

            三:最终实现效果

                  

                                                                                                                                                                                                                                    -- -- END

  • 相关阅读:
    Go语言基础之map
    Go语言基础之切片
    Go语言基础之数组
    Go语言fmt.Printf使用指南
    Go语言基础之流程控制
    Go语言基础之运算符
    Go语言基础之变量和常量
    Go语言环境搭建
    随笔
    使用SocketServer 创建TCP服务端
  • 原文地址:https://www.cnblogs.com/liujiajiablog/p/9026297.html
Copyright © 2020-2023  润新知