day01

作者: xusong__ | 来源:发表于2018-07-05 20:13 被阅读0次

今天学到了什么?

1.Jquery的选择器

1.1基本选择器
Jq的选择器支持所有css选择器
eg:  A:    id-->$("#one"), class-->$(".one")
 <p id="one" class="one">hello world</p>
    <script>
    var one=$("#one");
    one.css({color:"red",backgroundColor:"green"});
    console.log(one);
    </script>

         
B:所有元素-->$(“*”),标签元素-->$(“p”)
<p>hello world</p>
    <div>div</div>
    <h1>h1</h1>
    <script>
        $("p").click(function(){
            $(this).css({color:"red"})
        })
        $("*").css({color:"green"})
    </script>



C:分组选择器-->$(“p,div”):
<h1>h1</h1>
    <p>p</p>
    <div>div</div>
    <script>
    $("h1,p,div").css({color:"red"})
    </script>
1.2层次选择器
A:后代选择器-->$(“div >p”),$(“div p”)
<div id="parent"> 
        <p>hello world</p>
        <div>
            <p>hello world</p>
        </div>
    </div>
    <button id="btn">change</button>
    <script>
    $("#btn").click(function(){
        $("#parent p").css({color:"red"})
    })
    </script>


B:兄弟选择器-->$(“div+p”),$(“div~p”)


1.3过滤选择器
<div>
           <p>hello world</p>
           <p>hello world</p>
           <p>hello world</p>
           <p>hello world</p>
</div>


   <script>
     $("div>p:last-child").css({color:"red"});
    $("div>p:first-child").css({color:"red"});
    $("p:first").css({color:"red"});
    $("p:last").css({color:"red"});
    $("div p").css({color:"red"});
    $("p:not(:last)").css({color:"red"});
   
    $("p:even").css({color:"red"});//偶数开始,从0开始
    $("p:odd").css({color:"green"});//基数开始,从0开始

    $("p:eq(0)").css({color:"red"});//从0开始,等于第一个
    $("p").eq(0).css({color:"red"});
    $("p:gt(1)").css({color:"yellow"});//从0开始,大于第一个
    $("p:lt(3)").css({color:"yellow"});//从0开始,小于第一个,不包括3
   </script>
1.4内容过滤选择器
$("p:contains(hello)")  //选取文本中含有”hello”的p元素
$(“div:has(p)”)  //选取含有p元素的div元素
$(“div:parent”)   //选取含有子元素或者文本的元素  

<p>hello2</p>
    <p>good</p>
    <p>world</p>
    <div>
        <p>test</p>
    </div>
    <div>
        <h1>h1</h1>
    </div>
    <script>
        /*
    contains包含文本,has包含标签
        */
    // $("p:contains(world)").css({color:"red"});
    $("div:has(p)").css({color:"green"});
    </script>
1.5可见性过滤选择器
 <style>
    div{
        display: none;
    }
    </style>


    <p>hello world</p>
    <p>hello world</p>
    <p>hello world</p>
    <p>hello world</p>
    <script>
    $(":visible").css({color:"red"});
    $("div:hidden").css({display:"block"})
    </script>
1.6属性过滤选择器

2.Jquery中的DOM操作

2.1查找节点
 // text()-->获取元素的文本
 // text(value)-->修改元素的文本
 // attr(key)获取属性节点
 // html()-->返回标签包裹内容,包含html标签
 // val()-->获取输入框的值
eg:
    <ul>
        <li class="one">1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    <div>
        <p>hello world</p>
    </div>
    <input type="text" value="hello world">
    <script>
   
    var txt=$("li:eq(1)").text();
    // console.log(txt);
    var attr=$("li:eq(0)").attr("class");
    console.log(attr);

    var html=$("div").html();
    console.log(html);

    var value=$("input").val();
    console.log(value);
    </script>
2.2创建节点
  /*
$("<li>2</li>")-->创建一个元素
appened-->向父元素后面的添加
prepend-->向父元素的前面添加
  */
    <ul>
        <li>1</li>
    </ul>
    <script>
      
    var $li=$("<li>2</li>")
    $("ul").append($li);
    </script>
2.3插入节点
   /*
    brfore,after-->兄弟元素之前,之后
    */
    <div>div</div>
    <p>end</p>
    
    <script>
    var $p=$("<p>one</p>");
    var $h4=$("<h4>h4</h4>")
    $("div").after($p);
    $("p:contains(end)").before($h4)
    </script>
2.4/删除节点
1.删除节点
eg1:
<ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
    </ul>
    <button id="btn">btn</button>
    <script>
    $("#btn").click(function(){
        $("ul>li:eq(1)").remove();//删除节点
    })
    </script>

2.让标签的内容消失
eg2:
     <div>hello world</div>
     <script>
     $("div").empty();//让标签的内容消失
     </script>

3.替换节点
eg3:
    <div>hello world</div>
    <script>
    var $p=$("<p>replace</p>")
    $("div").replaceWith($p);//replaceWith-->替换节点
    </script>

3.包裹节点

 // wrap-->在元素的外层嵌套标签
 // wrapInner-->在元素内层嵌套标签
    <p>hello world</p>
    <script>
       
    $("p").wrap("<strong></strong>");
    $("p").wrapInner("<div></div>")
    </script>

4.属性操作

  1.操作属性attr(attrName,value)
  2.设置多个属性$("p").attr("class","two");
  3.删除属性$("p").removeAttr("class");
    
<p class="one">hello world</p>
    
   <script>
   $("p").attr({calss:"one",title:"two"})//设置多个属性
   $("p").removeAttr("class");//删除属性
   </script>

5.样式操作

//2.addClass-->添加class样式
// 3.removeClass-->移除class的样式

 <style>
    .current{
        color: red;
    }
 </style>


 <p>hello world</p>
    <button id="btn">btn</button>
    <script>
     //$("p").attr("class","current")1.通过属性的方式设置属性
     $("p").addClass("current")
  
    $("#btn").click(function(){
        $("p").removeClass("current");
    })
    </script>

6.切换样式

1.判断是否含有某个样式,返回true或false-->hasClass()
2.toggleClass-->切换样式


 <p>hello world</p>
    <button>toggle</button>
    <script>
    /*
    $("button").click(function(){
        $("p").toggleClass("current")//
    })
    
    */
    var one=$("p").hasClass("current");
    console.log(one);
    $("button").click(function(){
        if($("p").hasClass("current")){
            $("p").removeClass("current")
        }else{
            $("p").addClass("current")
        }
    })
    </script>
6.1遍历节点
    <ul>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
    </ul>
    <script>
        /*
        children()获取子节点
        */
    var childs=$("ul").children();
    // console.log(childs);
    childs.css({color:"red"});
    //prev()-->找到元素的上一个元素
    $("li:eq(1)").prev().css({backgroundColor:"green"})
     //next()-->找到元素的下一个元素
    $("li:eq(1)").next().css({backgroundColor:"yellow"})
    </script>
6.2遍历节点
<p>hello world</p>
    <script>
        // wrap-->在元素的外层嵌套标签
        // wrapInner-->在元素内层嵌套标签
    $("p").wrap("<strong></strong>");
    $("p").wrapInner("<div></div>")
6.3遍历节点
 // siblings()-->找到所有兄弟元素
7.
<div>
        <p class="one">hello world</p>
    </div>
    <button id="btn">btn</button>
    <script>
        // is-->放回一个boolean值
        // hide()-->将元素隐藏
        //show()-->将元素显现

        $("#btn").click(function () {
            // var p = $("p").is(":visible");
            // console.log(p);
            // if (p) {
            //     $("p").hide();
            // } else {
            //     $("p").show();
            // }
            $("p").toggle();
        })
    </script>
8.css的操作
  <style>
        *{margin:0;padding:0}
        div{
            width: 100px;
            height: 100px;
            background: red;
            margin: 100px;
        }
    </style>


    <!-- offset().left获取水平方向的偏移量 -->
    <div>

    </div>
    <script>
    $(function(){
        debugger;
        var left=$("div").offset().left;
        var top=$("div").offset().top;
    })
    </script>

相关文章

网友评论

      本文标题:day01

      本文链接:https://www.haomeiwen.com/subject/hgcmuftx.html