zoukankan      html  css  js  c++  java
  • JQuery 元素操作 each循环

    参考:http://jquery.cuishifeng.cn/css.html

    1.属性操作

    --------------------------属性
    $("").attr();   查属性 自己定义属性
    $("").removeAttr();
    $("").prop(); 一个值查属性 两个值赋值 返回布尔值类型 固有属性
    $("").removeProp();
    --------------------------CSS类
    $("").addClass(class|fn)
    $("").removeClass([class|fn])
    --------------------------HTML代码/文本/值
    $("").html([val|fn])
    $("").text([val|fn])
    $("").val([val|fn|arr]) 一般用于text
    ---------------------------
    $("").css("color","red")

    2.循环each

    //方式一
    $.each(arr,funcion(index,obj){
      console.log(index);
      console.log(obj)
    })


    //方式二
    $(selector).each(function(index,element){
      console.log($(this))
    })

    eg.正反选

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="jquery-1.11.3.min.js"></script>
        <script>
    
                 function selectall(){
    
                     $("table :checkbox").prop("checked",true)
                 }
                 function cancel(){
    
                     $("table :checkbox").prop("checked",false)
                 }
    
                 function reverse(){
    
    
                     //                 var idlist=$("table :checkbox")
    //                 for(var i=0;i<idlist.length;i++){
    //                     var element=idlist[i];
    //
    //                     var ischecked=$(element).prop("checked")
    //                     if (ischecked){
    //                         $(element).prop("checked",false)
    //                     }
    //                     else {
    //                         $(element).prop("checked",true)
    //                     }
    //
    //                 }
    //    jquery循环的两种方式
                     //方式一
    //                 li=[10,20,30,40]
    //                 dic={name:"yuan",sex:"male"}
    //                 $.each(li,function(i,x){
    //                     console.log(i,x)
    //                 })
    
                     //方式二
    //                    $("tr").each(function(){
    //                        console.log($(this).html())
    //                    })
    
    
    
                     $("table :checkbox").each(function(){
    
                         $(this).prop("checked",!$(this).prop("checked"));
    
    //                     if ($(this).prop("checked")){
    //                         $(this).prop("checked",false)
    //                     }
    //                     else {
    //                         $(this).prop("checked",true)
    //                     }
    
                         // 思考:如果用attr方法可以实现吗?
    
    
                     });
                 }
    
        </script>
    </head>
    <body>
    
         <button onclick="selectall();">全选</button>
         <button onclick="cancel();">取消</button>
         <button onclick="reverse();">反选</button>
    
         <table border="1">
             <tr>
                 <td><input type="checkbox"></td>
                 <td>111</td>
             </tr>
             <tr>
                 <td><input type="checkbox"></td>
                 <td>222</td>
             </tr>
             <tr>
                 <td><input type="checkbox"></td>
                 <td>333</td>
             </tr>
             <tr>
                 <td><input type="checkbox"></td>
                 <td>444</td>
             </tr>
         </table>
    
    
    
    </body>
    </html>

     3.文档处理

    //创建一个标签对象
        $("<p>")
    
    
    //内部插入
    
        $("").append(content|fn)      ----->$("p").append("<b>Hello</b>");
        $("").appendTo(content)       ----->$("p").appendTo("div");
        $("").prepend(content|fn)     ----->$("p").prepend("<b>Hello</b>");
        $("").prependTo(content)      ----->$("p").prependTo("#foo");
    
    //外部插入
    
        $("").after(content|fn)       ----->$("p").after("<b>Hello</b>");
        $("").before(content|fn)      ----->$("p").before("<b>Hello</b>");
        $("").insertAfter(content)    ----->$("p").insertAfter("#foo");
        $("").insertBefore(content)   ----->$("p").insertBefore("#foo");
    
    //替换
        $("").replaceWith(content|fn) ----->$("p").replaceWith("<b>Paragraph. </b>");
    
    //删除
        $("").empty() 清空内容 不删除标签元素
        $("").remove([expr]) 标签和内容全部删除
    //复制 $("").clone([Even[,deepEven]])

    eg:复制克隆

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    
    </head>
    <body>
                <div class="outer">
                    <div class="item">
                            <input type="button" value="+" onclick="add(this);">
                            <input type="text">
                    </div>
                </div>
    
    <script src="jquery-1.11.3.min.js"></script>
        <script>
                //var $clone_obj=$(self).parent().clone();  // $clone_obj放在这个位置可以吗?
                function add(self){
                    // 注意:if var $clone_obj=$(".outer .item").clone();会一遍二,二变四的增加
                     var $clone_obj=$(self).parent().clone();
                     $clone_obj.children(":button").val("-").attr("onclick","removed(this)");
                     $(self).parent().parent().append($clone_obj);
                }
               function removed(self){
    
                   $(self).parent().remove()
    
               }
    
        </script>
    </body>
    </html>

    4.css操作

    CSS
            $("").css(name|pro|[,val|fn])
        位置
            $("").offset([coordinates])
            $("").position()
            $("").scrollTop([val])
            $("").scrollLeft([val])
        尺寸
            $("").height([val|fn])
            $("").width([val|fn])
            $("").innerHeight()
            $("").innerWidth()
            $("").outerHeight([soptions])
            $("").outerWidth([options])

    4.事件

    页面载入
        ready(fn)  //当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。
        $(document).ready(function(){}) -----------> $(function(){})
    
    事件处理
        $("").on(eve,[selector],[data],fn)  // 在选择元素上绑定一个或多个事件的事件处理函数。
    
        //  .on的selector参数是筛选出调用.on方法的dom元素的指定子元素,如:
        //  $('ul').on('click', 'li', function(){console.log('click');})就是筛选出ul下的li给其绑定
        //  click事件;
    
        [selector]参数的好处:
            好处在于.on方法为动态添加的元素也能绑上指定事件;如:
    
            //$('ul li').on('click', function(){console.log('click');})的绑定方式和
            //$('ul li').bind('click', function(){console.log('click');})一样;我通过js给ul添加了一个
            //li:$('ul').append('<li>js new li<li>');这个新加的li是不会被绑上click事件的
    
            //但是用$('ul').on('click', 'li', function(){console.log('click');}方式绑定,然后动态添加
            //li:$('ul').append('<li>js new li<li>');这个新生成的li被绑上了click事件
        
        [data]参数的调用:
                 function myHandler(event) {
                    alert(event.data.foo);
                    }
                 $("li").on("click", {foo: "bar"}, myHandler)

    https://www.cnblogs.com/yuanchenqi/articles/6070667.html

  • 相关阅读:
    python
    在liunx环境下安装python
    解决用navicate远程连接数据库出现1045
    mysql的监控及优化
    mysql基础
    linux基础学习
    Effective c++ 第一章 让自己习惯C++
    读前感
    socket编程:客户端与服务器间的连接以及各函数的用法
    生成任意区间的随机数
  • 原文地址:https://www.cnblogs.com/icemonkey/p/10500679.html
Copyright © 2011-2022 走看看