zoukankan      html  css  js  c++  java
  • jQuery-DOM操作

    jQuery的DOM节点:

    1、获取节点的内容 : text()方法

    2、查找属性节点,并且的到属性值 attr()

    var $para = $("p");

    var p_text = $para.attr("title");

    alert(p_text);

    3、创建元素节点:

    var $li_1 = $("<li title='香蕉'>香蕉</li>");

    var $li_2 = $("<li title='梨'>梨</li>");

    $("ul").append($li_1);

    $("ul").append($li_2);

    4、插入到HTML中

    //插入节点的方法

    append() : 向每个匹配的元素内部追加内容

    appendTo() :

    prepend() : 向每个匹配的元素内部前置内容

    prependTo() :

    after() : 在每个匹配的元素知乎插入内容

    insertAfter() : 将A插入到B后面

    before() : 在每个匹配元素之前插入内容

    insertBefore() : 将A插入到B的前面

    5、remove()方法:使用该方法后,该节点所包含的所有后代节点都会同时被删除,该方法的返回值是一个指向已被删除的节点的引用,因此可以在以后再使用这些元素

    var $li = $("ul li:eq(1)").remove();

    $li.appendTo("ul");

    $("ul li").remove("li[title != 菠萝]");

    6、detach()方法与remove()方法一样,都是从DOM中去掉所有匹配的元素,淡水该方法不会把匹配的元素从jQuery对象中删除,因此将来还可以再使用这些匹配的元素,与remove()方法不同的是,所有的绑定事件,附加的数据都会保留下来

    7、empty()方法:不是删除节点。而是清空元素中的所有后代节点

    8、复制节点:

    $("ul li").click(function(){

          $(this).clone.appendTo("ul");

    })

    $(this).clone(true).appendTo("ul");

    //在colne中传递了一个参数,它的含义是复制元素的时候同时复制元素中的绑定事件

    9、替换节点:replaceWith()以及replaceAll()

    $("p").replaceWith("<strong>你最不喜欢的水果是?</strong>");

    $("<strong>你最不喜欢的水果是?</strong>").replaceAll("p");

    10、包裹节点:wrap(),wrapAll(),wrapInner()

    wrap():

    $("strong").wrap("<br></br>");

    //将strong标签用br标签包裹起来

    wrapAll():

    <strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong>

    <strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong>

    ***************************************

    $("strong").wrap("<br></br>");

    <br><strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong></br>

    <br><strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong></br>

    ***************************************

    $("strong").wrapAll("<br></br>");

    <br>

    <strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong>

    <strong title="你最不喜欢的水果是?">你最不喜欢的水果是?</strong>

    </br>

    //如果要是被包裹的多个元素间有其他元素,其他元素会被放到包裹元素之后

    wrapInner():

    //将每一个匹配的元素的子内容(包括文本节点)用其他结构化标记包裹起来

    $("strong").wrapInner("<br></br>");

    <strong title="你最不喜欢的水果是?"><br>你最不喜欢的水果是?</br></strong>

    11、获取属性以及设置属性

    //获取<p>元素的属性title,只需要给attr()传递一个参数

    //设置title属性的值,需要传递2个参数

    var $para = $("p");

    var p_text = $para.attr(“title);

    //单个属性值

    $("p").attr("title" , "you title");

    //多个属性值

    $("p").attr("title":"you title","name": "name");

    12、删除文档中某个元素的特定属性

    $("p").removeAttr("title");

    13、获取样式:

    与获取class属性就可以了(将原来的替换成新的)

    追加样式:addClass()

    $("p").addClass("another");

    14、移除样式:

    <p class="high another" title="hao">好</p>

    //移除一个

    $("p").removeClass("high");

    //移除2项

    $("p").removeClass("high").removeClass("another");

    //一性移除多项

    $("p").removeClass("high another");

    //移除该元素的所有样式

    $("p").removeClass();

    15、切换样式:toggleClass()控制样式的重复切换,如果类名存在就删除它,如果不存在就添加它

    $("p").toggleClass("another"); ---重复切换another类

    16、判断是否含有某个样式:hasClass()

    17、获取设置html代码

    var p_html = $("p").html();

    alert(p_html);

    //设置<p>元素的HTML代码

    $("p").html("<strong>wwwwwww</strong>");

    18、text()获取元素的文本

    $(“p“).text(“woshihaioohh”)

    19、val()方法:设置和获取元素的value值

    this.defaultValue是指当前文本框的默认值

    //下拉列表的第二项以及第一项被选中

    $("#multiple").val(["选择2号","选择3号"]);

    //多选框被选中

    $(":checkbox").val(["check2","check3"]);

    //单选框被选中

    $(":radio").val(["radio2"]);

    还可以使用attr方法

    $("[value=radio2]:radio").attr("checked",true);

    $("#single option:eq(1)").attr("selected",true);

    20、children()方法获取匹配元素的所有子元素的个数,只考虑子元素,不考虑其他后代子元素

    21、next()方法:取得匹配元素后面紧邻的同辈元素

    22、prev()方法:取得匹配元素前面紧邻的同辈元素

    23、siblings()方法:取得匹配元素前后的所有同辈元素

    24、closest()方法:取得最近的匹配元素,首先检查当前元素是否匹配,如果匹配则直接返回元素本身,如果不匹配则向上查找父元素,逐级向上查找,如果什么都没找到,则返回一个空的jQuery对象

    $(document).bind("click",function(e){

          $(e.target).closest("li").css("color","red");

    })

    25、parent()获得集合中每个匹配元素的父级元素

    Parents()每个匹配元素的祖先元素,找到父级之后还会继续向上查找

    26、$("p").css("color");//获取<p>元素的样式颜色

    $("p").css("color","red");

    $("p").css({"color":"red","fontSize":"30px"});

    $(element).css(height);

    $("p").height();

    $("p").height(100);---默认是px

    $("p").height("100em");

    27、元素定位:

    Offset():获取元素在当前视窗的相对偏移

    var offset = $("p").offset();

    var left = offset.left;

    var top = offset.top;

    position():获取元素相对于最近的一个position样式属性的祖先父节点的相对偏移

    var position = $("p").position();

    var left = position.left;

    var top = position.top;

    scrollTop()以及scrollLeft()方法:分别获取元素的滚动条距顶端的距离以及距左侧的距离

    var scrollTop = $("p").scrollTop();

    var scrollLeft = $("p").scrollLeft();

    *******************

    $("textarea").scrollTop(300);

    $("textarea").scrollLeft(300);

    28、show()

    $(selector).show(speed,callback)

    可选。规定元素从隐藏到完全可见的速度。默认为 "0"。

    可能的值:

    毫秒 (比如 1500)

    "slow"

    "normal"

    "fast"

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>jquery练习</title>
        <link rel="stylesheet" type="text/css" href="css/DOM.css">
        <script type="text/javascript" src="scripts/jquery-1.12.0.js"></script>
    </head>
    <body>
        <!-- 链接提示 -->
        <p><a href="#" class="tooltip" title="这是我的超链接提示1">提示1:</a></p>
        <p><a href="#" class="tooltip" title="这是我的超链接提示2">提示2:</a></p>
        <p><a href="#" title="这是自带的提示1">自带提示1</a></p>
        <p><a href="#" title="这是自带的提示2">自带提示2</a></p>
        <!-- 图片链接提示 -->
        <ul>
            <li><a href="images/pic1.jpg" class="tooltip" title="111"><img src="images/pic2.jpg"></a></li>
            <li><a href="images/pic3.jpg" class="tooltip" title="222"><img src="images/pic4.jpg"></a></li>
            <li><a href="images/pic5.jpg" class="tooltip" title="333"><img src="images/pic6.jpg"></a></li>
        </ul>
        <script type="text/javascript" src="js/DOM.js"></script>
    </body>
    </html>
    //title属性
    $(function(){
        var x=10;
        var y=10;
        $("a .tooltip").mouseover(function(e){
            this.myTitle = this.title;
            this.title = "";
            var tooltip = "<div id='tooltip'>"+this.myTitle+"</div>";
            $("body").append(tooltip);
            $("#tooltip").css({
                "top" : (e.pageY + y) + "px" , 
                "left" : (e.pageX + x) + "px"
            }).show("fast");
        }).mouseout(function(){
            this.title = this.myTitle;
            $("#tooltip").remove();
        }).mousemove(function(e){
            $("#tooltip").css({
                "top" : (e.pageY + y) + "px" , 
                "left" : (e.pageX + x) + "px"
            });
        });
    })
    
    
    //图片链接
        $(function(){ 
        var x = 10; 
        var y = 20; 
        $("a.tooltip").mouseover(function(e){ 
        this.myTitle = this.title; 
        this.title = ""; 
        var imgTitle = this.myTitle? "<br/>" + this.myTitle : ""; 
        var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='产品预览图'/>"+imgTitle+"</div>"; //创建 div 元素 
        $("body").append(tooltip); //把它追加到文档中 
        $("#tooltip") 
        .css({ 
        "top": (e.pageY+y) + "px", 
        "left": (e.pageX+x) + "px" 
        }).show("fast"); //设置x坐标和y坐标,并且显示 
        }).mouseout(function(){ 
        this.title = this.myTitle; 
        $("#tooltip").remove(); //移除 
        }).mousemove(function(e){ 
        $("#tooltip") 
        .css({ 
        "top": (e.pageY+y) + "px", 
        "left": (e.pageX+x) + "px" 
        }); 
        }); 
        }) 
  • 相关阅读:
    POJ 3114 Tarjan+Dijkstra
    278. First Bad Version
    209. Minimum Size Subarray Sum
    154. Find Minimum in Rotated Sorted Array II
    153. Find Minimum in Rotated Sorted Array
    710. Random Pick with Blacklist
    767. Reorganize String
    524. Longest Word in Dictionary through Deleting
    349. Intersection of Two Arrays
    350. Intersection of Two Arrays II
  • 原文地址:https://www.cnblogs.com/zhanghuiyun/p/5184663.html
Copyright © 2011-2022 走看看