首页  >  文章  >  web前端  >  小强的HTML5移动开发之路(36)——jQuery中的DOM操作

小强的HTML5移动开发之路(36)——jQuery中的DOM操作

黄舟
黄舟原创
2017-02-04 14:49:47908浏览

1、查询

利用选择器查找节点

使用 html() / text() / attr() 输出节点文本和属性值。

注意:下拉列表使用 val()

<html>  
    <head>  
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>  
        <script>  
            $(function(){  
                $(&#39;#b1&#39;).click(function(){  
                    //$(&#39;#d1&#39;).html(&#39;java&#39;);  
                    //将节点的属性读出来  
                    //$(&#39;#d1&#39;).attr(&#39;style&#39;);  
                    //$(&#39;#d1&#39;).attr(&#39;style&#39;,&#39;font-size:30pt&#39;);  
                    $(&#39;#d1&#39;).attr(&#39;class&#39;,&#39;s1&#39;);  
                });  
            });  
        </script>  
        <style>  
            .s1{  
                color:red;  
            }  
        </style>  
    </head>  
    <body>  
        <div id="d1">hello</div>  
        <ul>  
            <li>item1</li>  
            <li id="i1">item2</li>  
            <li>item3</li>  
        </ul>  
        <input type="button" id="b1" value="点我"/>  
    </body>  
</html>

2、创建

$(html)

3、插入节点

append();

prepend();

after();

before();

<html>  
    <head>  
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>  
        <script>  
            $(function(){  
                $(&#39;#b1&#39;).click(function(){  
                    var $node = $(&#39;<li>item4</li>&#39;);  
                    $(&#39;ul&#39;).append($node);  
                    //$(&#39;ul&#39;).append(&#39;<li>item4</li>&#39;); 和上面是等价的  
                });  
            });  
        </script>  
        <style>  
            .s1{  
                color:red;  
            }  
        </style>  
    </head>  
    <body>  
        <div id="d1">hello</div>  
        <ul>  
            <li>item1</li>  
            <li id="i1">item2</li>  
            <li>item3</li>  
        </ul>  
        <input type="button" id="b1" value="点我"/>  
    </body>  
</html>

4、删除节点

remove();

remove(selector);

empty();清空内容

$(&#39;#b1&#39;).click(function(){  
    //$(&#39;ul li:eq(1)&#39;).remove();  
    $(&#39;ul li&#39;).remove(&#39;li[id=i1]&#39;);  
            $(&#39;ul li:eq(1)&#39;).empty();  
});

5、复制节点

clone();

clone(true); 使复制的节点也具有行为

6、属性操作

读取:attr(' ');

设置:attr(' ', ' ');

或者一次设置多个属性attr({" ", " "});

删除:removeAttr(' ');

$(&#39;#b1&#39;).click(function(){  
    $(&#39;#d1&#39;).attr({"class":"s1","style":"font-size:40pt"});  
});

7、样式操作

获取和设置:attr("class", " ");

追加:addClass(' ', ' ');

切换样式:toggleClass(' ', ' ');

是否有某个样式hasClass(' ');

css('  ', '  ');

css({ '  ': '  ',  '   ': '  '});

$(&#39;#b1&#39;).click(function(){  
    $(&#39;div:first&#39;).addClass(&#39;s1 s2&#39;);  
    $(&#39;div:first&#39;).removeClass(&#39;s2&#39;);  
    $(&#39;div:first&#39;).toggleClass(&#39;s1&#39;);  
});

8、设置和获取html,文本和值

html() / html('  ')

text() /  text('  ')

val() ;  设置和读取元素的值

9、遍历

children()

next();

prive();

siblings():所有兄弟

10、综合实例

<script>  
$(function(){  
  
    $(&#39;#b1&#39;).click(function(){  
        //$(&#39;#d1&#39;).html(&#39;java&#39;);  
        //将节点的属性读出来  
        $(&#39;#d1&#39;).attr(&#39;style&#39;);  
        $(&#39;#d1&#39;).attr(&#39;style&#39;,&#39;font-size:30pt&#39;);  
        $(&#39;#d1&#39;).attr(&#39;class&#39;,&#39;s1&#39;);  
    });  
  
    $(&#39;#b1&#39;).click(function(){  
        var $node = $(&#39;<li>item4</li>&#39;);  
        $(&#39;ul&#39;).append($node);  
        //$(&#39;ul&#39;).append(&#39;<li>item4</li>&#39;); 和上面是等价的  
    });  
  
    $(&#39;#b1&#39;).click(function(){  
        //$(&#39;ul li:eq(1)&#39;).remove();  
        $(&#39;ul li&#39;).remove(&#39;li[id=i1]&#39;);  
                $(&#39;ul li:eq(1)&#39;).empty();  
    });  
  
    $(&#39;#b1&#39;).click(function(){  
        var $node = $(&#39;ul li:eq(2)&#39;).clone();  
        $(&#39;ul&#39;).append($node);  
          
        var $node = $(&#39;ul li:eq(2)&#39;).clone(true);  
        $(&#39;ul&#39;).append($node);  
    });  
  
    $(&#39;ul li:eq(2)&#39;).click(function(){  
        //可以使用this来访问符合$(&#39;selecotr&#39;)查询条件的节点  
            //alert(this.innerHTML);  
            alert($(this).html());  
    });  
  
    $(&#39;#b1&#39;).click(function(){  
        $(&#39;#d1&#39;).attr({"class":"s1","style":"font-size:40pt"});  
    });  
  
    $(&#39;#b1&#39;).click(function(){  
        $(&#39;div:first&#39;).addClass(&#39;s1 s2&#39;);  
        $(&#39;div:first&#39;).removeClass(&#39;s2&#39;);  
        $(&#39;div:first&#39;).toggleClass(&#39;s1&#39;);  
    });  
    $(&#39;#b1&#39;).click(function(){  
        alert($(&#39;input[type=text]&#39;).val();  
        alert($(&#39;select&#39;).val());  
        //单选和多选框不能这样写  
        alert($(&#39;:radio&#39;).val());  
        alert($(&#39;:checkbox&#39;).val());  
        //要这样去写  
        var $node = $(&#39;:radio&#39;);  
        $node.each(function(){  
            //if($(this).attr(&#39;checked&#39;)){  
            //  alert($(this).val());  
            //}  
            if(this.checked){  
                alert(this.value);  
            }  
        });  
    });  
    $(&#39;#b1&#39;).click(function(){  
        var $items = $(&#39;ul&#39;).children();  
        //如果查询返回的是多个节点,可以使用length属性返回节点的个数  
        alert($items.length);  
        //如何遍历  
        $items.each(function(i){  
            //$(this)html();  
            alert(this.innerHTML);  
        });  
    });  
});  
</script>  
      
<style>  
    .s1{  
        color:yellow;  
    }  
    .s2{  
        border:1px solid black;  
    }  
</style>  
  
<body>  
    <div>hello</div>  
    <ul>  
        <li>item1</li>  
        <li id="i1">item2</li>  
        <li>item3</li>  
    </ul>  
    <div id="d1" style="background-color:red;">hello</div>  
    <input type="button" value="clickMe" id="b1"/>  
    <input type="text" name="name"/><br/>  
    male:<input type="radio" name="sex" value="m"/>  
    female:<input type="radio" name="sex" value="f"/>  
    fishing:<input type="checkbox" name="intrest" value="fishing"/>  
    cookinng:<input type="checkbox" name="intrest" value="cooking"/>  
    sleeping:<input type="checkbox" name="intrest" value="sleeping"/>  
    <select>  
        <option value="bj">beijing</option>  
        <option value="sh">shanghai</option>  
        <option value="tj">tianjing</option>  
    </select>  
</body>

以上就是 小强的HTML5移动开发之路(36)——jQuery中的DOM操作的内容,更多相关内容请关注PHP中文网(www.php.cn)!


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn