首页 前端知识 jQuery(二②)

jQuery(二②)

2024-05-28 09:05:56 前端知识 前端哥 775 152 我要收藏

一、使用jQuery操作DOM

dom : 文档对象模型    就是HTML元素  
            
js中如何操作DOM节点
document.write("<p>我是p标签</p>");        
缺点:无法在指定的位置生成元素
            
            
$()   函数的2个用法:
用法1:放入一个字符串(选择器)表示获取元素   例如$("p") $("#abc")  $(".del") 
用法2:放入一个函数,表示文档就绪函数   例如  $(function(){代码...})
            
用法3:如下所示
            
jquery创建节点的方法如下:
1.创建节点 语法如下:
$("xxxxx"); xxx表示你要创建的dom元素   例如  $("<p>我是p标签<p>");
            
此时仅仅是创建了节点.理解为是孤儿节点.  需要将其插入到某个节点中.
例如 放入body标签中 方法div标签中等等.
            
            
插入方法1:append() 表示插入到指定元素内部的尾端.
语法: $("aa").append("bb")  表示将bb插入到aa内部的尾端
 

二、show和hide方法


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <button>按钮</button> <br>
        <img src="img/0.jpg"> 
        
        <script src="js/jquery.js"></script>
        <script>
            
            //$("xx").hide();隐藏XX元素
            //$("xx").show();显示XX元素
            //$("xx").toggle();来回切换:显示或隐藏XX元素 
            
            $("button").click(function(){
                
                // if($("img").css("display")=="inline"){
                //     $("img").hide();
                // }else{
                //     $("img").show();
                // }
                
                $("img").toggle();
                
                
                
                
            });
            
            
            
        </script>
    </body>
</html>

三、addClass()和removeClass()方法


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style>
            .a{
                font-size: 50px;
            }
            
            .b{
                color: red;
            }
            
            .c{
                background-color: aqua;
            }
        </style>
        
    </head>
    <body>
        <p>你好</p>
        
        
        <script src="js/jquery.js"></script>
        <script>
            
            //$("xx").addClass("a");给元素添加类名为a
            //$("xx").removeClass("aa);给元素移除类名为a
            
            
            // $("p").addClass("a");
            // $("p").addClass("b");
            // $("p").addClass("c");
            
            //jquery对象的特点:  调用任意方法的返回值 依然是它本身
            $("p").addClass("a").addClass("b").addClass("c").click(function(){
                alert(123);
            }).mouseover(function(){
                alert(567)
            }).removeClass("c");
            
            
        </script>
    </body>
</html>

四、如何获取当前元素


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        
        <button>按钮1</button>
        <button>按钮2</button>
        <button>按钮3</button>
        <button>按钮4</button>
        <button>按钮5</button>
        <button>按钮6</button>
        <button>按钮7</button>
        
        <script src="js/jquery.js"></script>
        <script>
            
            //$("xx").index();返回当前元素在兄弟中下标
            
            $("button").click(function(){
                // $(this);获取当前的元素
                alert(  $(this).index()  )    
            });
            
        </script>
    </body>
</html>

五、轮播图简化图

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        <style>
            img{
                width: 400px;
                height: 150px;
            }
            
            li{
                float: left;
                margin-left: 30px;
                color: pink;
            }
            
            ul{
                margin-left: 300px;
                margin-top: -20px;
                position: absolute;
            }
            
            
            
        </style>
    </head>
    <body>
        <div align="center">
            <img src="img/0.jpg" />
            <ul>
                <li></li>
                <li></li>
                <li></li>
                <li></li>
                <li></li>
                <li></li>
            </ul>
        </div>
        
        
        
        
        <script src="js/jquery.js"></script>
        <script>
            $("li").mouseover(function(){
                //获取当前li标签的下标
                let index = $(this).index();
                $("img").attr("src","img/"+index+".jpg");
                indexImg = index;
                $("li").css("color","pink");
                $("li:eq("+index+")").css("color","red");
            })
            
            
            var indexImg = 0;
            setInterval(function(){
                indexImg++;
                if (indexImg==6) {
                    indexImg = 0;
                }
                
                $("img").attr("src","img/" +  indexImg +".jpg");
                
                
                $("li").css("color","pink");
                $("li:eq("+indexImg+")").css("color","red");
                
            },2000)
            
        </script>
    </body>
</html>

六、each方法讲解


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        
        <p></p>
        <p></p>
        <p></p>
        <p></p>
        <p></p>
 
 
        
        <script src="js/jquery.js"></script>
        <script>
            
            //each方法的语法:   $("xx").each(   function(){  代码体   }   );
            //遍历xx元素.每遍历一次  就执行一次代码体.
            
            
            //这种写法 较为局限 但是也很重要  
            // $("p").text("你好");
            
            
            var arr = ["这是第1条新闻","这是第2条新闻","这是第3条新闻","这是第4条新闻","这是第5条新闻"]
            
            $("p").each(function(){
                $(this).text(  arr[$(this).index()]   );
            });
            
            
            
            
        </script>
        
    </body>
</html>

七、选项卡特效

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
        
        <style>
            div{
                width:400px;
                height: 300px;
                background-color: pink;
                margin: auto;
            }
            
            ul{
                list-style: none;
            }
            
            li{
                float: left;
                margin-left: 20px;
                font-size: 20px;
            }
            
            
        </style>
        
        
    </head>
    <body>
        
        <div>
            <ul>
                <li>综合</li>
                <li>公告</li>
                <li>赛事</li>
                <li>攻略</li>
                <li>社区</li>
            </ul>
            
            <br><br><br>
            
            <a href="#">  </a>  <br><br>
            <a href="#">  </a>  <br><br>
            <a href="#">  </a>  <br><br>
            <a href="#">  </a>  <br><br>
            <a href="#">  </a>  <br><br>
            <a href="#">  </a>  <br><br>
            
        </div>
        
        
        <script src="js/jquery.js"></script>
        <script>
            
            //暂时模拟去数据库拿数据
            
            let arr = [
                ["这是第1条综合数据~~~~~~~~~~","这是第2条综合数据~~~~~~~~~~","这是第3条综合数据~~~~~~~~~~","这是第4条综合数据~~~~~~~~~~","这是第5条综合数据~~~~~~~~~~","这是第6条综合数据~~~~~~~~~~"],
                ["这是第1条公告数据~~~~~~~~~~","这是第2条公告数据~~~~~~~~~~","这是第3条公告数据~~~~~~~~~~","这是第4条公告数据~~~~~~~~~~","这是第5条公告数据~~~~~~~~~~","这是第6条公告数据~~~~~~~~~~"],
                ["这是第1条赛事数据~~~~~~~~~~","这是第2条赛事数据~~~~~~~~~~","这是第3条赛事数据~~~~~~~~~~","这是第4条赛事数据~~~~~~~~~~","这是第5条赛事数据~~~~~~~~~~","这是第6条赛事数据~~~~~~~~~~"],
                ["这是第1条攻略数据~~~~~~~~~~","这是第2条攻略数据~~~~~~~~~~","这是第3条攻略数据~~~~~~~~~~","这是第4条攻略数据~~~~~~~~~~","这是第5条攻略数据~~~~~~~~~~","这是第6条攻略数据~~~~~~~~~~"],
                ["这是第1条社区数据~~~~~~~~~~","这是第2条社区数据~~~~~~~~~~","这是第3条社区数据~~~~~~~~~~","这是第4条社区数据~~~~~~~~~~","这是第5条社区数据~~~~~~~~~~","这是第6条社区数据~~~~~~~~~~"]
            ];
            
            
            
            $("li").mouseover(function(){
                
                //将所有的颜色都还原
                $("li").css("color" , "black");
                //悬停在哪里 就将li标签文字颜色改成蓝色
                $(this).css("color" , "blue");
                //将li标签对应的所有新闻展示出来
                //获取li标签的下标
                let index = $(this).index();
                
                let a_index = 0;
                $("a").each(function(){
                    
                    
                    //注意index方法返回的是当前元素在兄弟节点的下标
                    //由于a标签的兄弟不仅仅只有a还有ul标签和br标签
                    // 所以这里的值不为012345  而是一堆可能没规律的数
                    //解决方式:在外面加一个变量 负责计数
                    // let i = $(this).index();
                    // console.log(i);
                    
                    
                    $(this).text (  arr[index][  a_index++  ] ) ;
                    
                    
                    
                });
                
            });
            
            
            
            
            
        </script>
    </body>
    
</html>

八、客串知识讲解


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <div>
            <p>
                <font>啊啊啊</font>
            </p>
        </div>
        
        
        <input type="text" id="a" />
        <input type="text" id="b" />
        <input type="text" id="c" />
        
        <script src="js/jquery.js"></script>
        <script>
            $("#c").focus();
            
            
            //需求:删除font标签
            $("font").remove();
            
            //需求:删除p
            $("p").remove();
            
            //需求:删除font标签的父亲
            $("p").parent().remove();
            
            
        </script>
    </body>
</html>

转载请注明出处或者链接地址:https://www.qianduange.cn//article/9848.html
标签
评论
发布的文章
大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!