Javascript知识【jQuery样式操作&案例:jQuery隔行换色】

简介: Javascript知识【jQuery样式操作&案例:jQuery隔行换色】

1,jQuery样式操作


目标:通过jQuery熟练切换CSS样式


addClass()给指定标签的class属性追加样式


removeClass()将标签指定的class属性移除


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .blueDiv{
            background-color: #87CEFA;
            width:300px;
            height:300px;
        }
        .redFont{
            font-size:50px;
            color:red;
        }
        .redDiv{
            background-color: red;
            width:300px;
            height:300px;
        }
    </style>
    <script src="../js/jquery-3.3.1.min.js"></script>
    <script>
        $(function(){
            //1、设置d1这个div标签样式为blueDiv和redFont
            //写法一:各自追加
            /*$("#d1").addClass("blueDiv");
            $("#d1").addClass("redFont");*/
            //写法二:追加一次 addClass("值1 值2");
            $("#d1").addClass("blueDiv redFont");
            //2、移除d2这个div标签的redDiv样式
            $("#d2").removeClass("redDiv");
        });
    </script>
</head>
<body>
    <div id="d1">11111</div>
    <div id="d2" class="redDiv">22222</div>
</body>
</html>

67842f40d0c54bbb8764fe44357bb380.png


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .blueDiv{
            background-color: #87CEFA;
            width:300px;
            height:300px;
        }
    </style>
    <script src="../js/jquery-3.3.1.min.js"></script>
    <script>
        $(function(){
            var d2 = $("#d2");
            //1、获取d2这个div,字体大小
            alert(d2.css("font-size"));
            //2、设置d2这个div,字体大小为30px
            d2.css("font-size","30px");
        });
    </script>
</head>
<body>
    <div id="d1">11111</div>
    <div id="d2" class="blueDiv">22222</div>
</body>
</html>


2,案例:jQuery隔行换色


2.1:案例1

90bb8275220f4bdb9d018f32ceb103f8.png

8b16cfe4d7c444fb859260bb51aca9cf.png

分析:

关键点:


1、样式切换:addClass()


2、除了第一个tr外,所有的tr,进行奇偶数筛选


tr:gt(0)      :even偶数   :odd奇数


步骤:


1、页面加载完成时


2、获取除了第一个tr外,指定奇偶数的tr


3、为指定这些tr添加蓝色样式


代码实现


<script src="../js/jquery-3.3.1.min.js"></script>
<script>
   //1、页面加载完成时
   $(function () {
      //2、获取除了第一个tr外,指定奇偶数的tr
      //    对tr:gt(0)的集合进行筛选。 第一条数据1,索引0是偶数
      var arr = $("tr:gt(0):odd");
      /*arr.each(function () {
         alert(this.innerHTML);
      });*/
      //3、为指定这些tr添加蓝色样式
      arr.addClass("blue");
      //优化为:$("tr:gt(0):odd").addClass("blue");
   });
</script>

注意:


:even时,对前方集合进行重新索引排序。


2.2:鼠标移入粉色,移出原色

736c0e57b81541958dd2466caeb96202.png

582dbcf56b204213893259695e9fb633.png分析:

关键点:


jQuery事件如何进行绑定 鼠标移入,鼠标移出:

jq对象.事件名1(function(){


//this  当前对象 js对象


}).事件名2(function(){


//this  当前对象 js对象


});


Js:onmouseover


JQ: mouseover


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #d1{
            width:100px;
            height:100px;
            background-color: skyblue;
        }
    </style>
    <script src="../js/jquery-3.3.1.min.js"></script>
    <script>
        $(function () {
            $("#d1").mouseover(function () {
                $(this).css("background-color","pink");
            }).mouseout(function () {
                $(this).css("background-color","skyblue");
            });
        });
    </script>
</head>
<body>
    <!--  鼠标移入粉色,鼠标移出原色  -->
    <div id="d1"></div>
</body>
</html>


颜色要进行设置与保存

①思路:变色:this["key"] = 原来的颜色;


   this.style="background-color:新颜色";


还原: this.style="background-color:"+this["key"];


变色:this["key"] = $(this).css("background-color");


                       $(this).css("background-color","新颜色");


还原: $(this).css("background-color",this["key"]);


②思路:(问题:删除其他不该删除的行内样式)


变色:this.style="background-color:新颜色";


还原:this.style=undefined;


步骤:

  1. 获取所有指定的tr
  2. 绑定鼠标移入事件:事件中,进行变色逻辑
  3. 绑定鼠标移出事件:事件中,进行还原逻辑


代码实现:

<script src="../js/jquery-3.3.1.min.js"></script>
<script>
   //1、页面加载完成时
   $(function () {
      $("tr:gt(0):odd").addClass("blue");
      //1、获取所有指定的tr
      var trs = $("tr:gt(0)");
      //2、绑定鼠标移入事件:事件中,进行变色逻辑
      trs.mouseover(function () {
         //保存原有色
         this["k1"] = $(this).css("background-color");
         //赋予新色
         $(this).css("background-color","pink");
      }).mouseout(function () {
         //3、绑定鼠标移出事件:事件中,进行还原逻辑
         $(this).css("background-color",this["k1"]);
      });
   });
</script>
相关文章
|
1月前
|
JSON JavaScript 数据格式
jqtimeline.js-简单又好用的jquery时间轴插件
jqtimeline.js-简单又好用的jquery时间轴插件
|
1月前
|
JavaScript 前端开发 Java
深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解
Array.find() 是 JavaScript 数组方法中一个非常实用和强大的工具。它不仅提供了简洁的查找操作,还具有性能上的独特优势:返回的引用能够直接影响原数组的数据内容,使得数据更新更加高效。通过各种场景的展示,我们可以看到 Array.find() 在更新、条件查找和嵌套结构查找等场景中的广泛应用。 在实际开发中,掌握 Array.find() 的特性和使用技巧,可以让代码更加简洁高效,特别是在需要直接修改原数据内容的情形。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一
|
1月前
|
监控 JavaScript 前端开发
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
MutationObserver 是一个非常强大的 API,提供了一种高效、灵活的方式来监听和响应 DOM 变化。它解决了传统 DOM 事件监听器的诸多局限性,通过异步、批量的方式处理 DOM 变化,大大提高了性能和效率。在实际开发中,合理使用 MutationObserver 可以帮助我们更好地控制 DOM 操作,提高代码的健壮性和可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
|
2月前
|
JavaScript 前端开发 索引
40个JS常用使用技巧案例
大家好,我是V哥。在日常开发中,JS是解决页面交互的利器。V哥总结了40个实用的JS小技巧,涵盖数组操作、对象处理、函数使用等,并附带案例代码和解释。从数组去重到异步函数,这些技巧能显著提升开发效率。先赞再看后评论,腰缠万贯财进门。关注威哥爱编程,全栈开发就你行!
92 16
|
4月前
|
JavaScript 前端开发 iOS开发
ios样式开关按钮jQuery插件
ios样式开关按钮jQuery插件
73 7
|
4月前
|
JavaScript 前端开发
jQuery和CSS3斑马线样式range滑块特效
jQuery和CSS3斑马线样式range滑块特效
|
5月前
|
JavaScript 前端开发
js+jquery实现贪吃蛇经典小游戏
本项目采用HTML、CSS、JavaScript和jQuery技术,无需游戏框架支持。通过下载项目文件至本地,双击index.html即可启动贪吃蛇游戏。游戏界面简洁,支持方向键控制蛇移动,空格键实现游戏暂停与恢复功能。
117 14
|
6月前
|
JavaScript 前端开发 开发者
jQuery:JavaScript库的瑰宝
jQuery:JavaScript库的瑰宝
132 3
|
6月前
|
JavaScript 前端开发 API
深入了解jQuery:快速、高效的JavaScript库
【10月更文挑战第11天深入了解jQuery:快速、高效的JavaScript库
66 0
|
6月前
|
移动开发 前端开发 JavaScript
JavaScript 中的样式切换方法
JavaScript 中的样式切换方法
31 0