zoukankan      html  css  js  c++  java
  • jquery一些总结

    今天用jquery写一个js的效果,总结了几个方法。

    获取jquery对象的css样式属性:css()方法,还可以更改其css样式:$(this).css('display') ;$(this).css('display','none');

    获取兄弟节点的方法:$(this).siblings()方法

    jquery对象增加删除clss属性可以用来改变样式:$(this).addClass('className') ; $(this).removeClass('className');

     某些jquery对象的悬停效果 $(this).hover(function(){},function(){});前面函数是鼠标进入区域时触发的操作,后面函数是鼠标离开区域时触发的操作

     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Basic Form - jQuery EasyUI Demo</title>
     6     <link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
     7     <link rel="stylesheet" type="text/css" href="../../themes/icon.css">
     8     <link rel="stylesheet" type="text/css" href="../demo.css">
     9     <script type="text/javascript" src="../../jquery.min.js"></script>
    10     <script type="text/javascript" src="../../jquery.easyui.min.js"></script>
    11 
    12  <script type="text/javascript">
    13     $(function(){
    14 
    15         
    16         
    17         $('.type_selected').text("公司");
    18         
    19         //显示li的悬停事件
    20         $('.type_selected').hover(function(){
    21             $(this).siblings().css('display','list-item');
    22             if($(this).text()=="公司"){
    23                 $(this).siblings().text("职位");
    24             }else{
    25                 $(this).siblings().text("公司");
    26             }
    27             
    28 
    29             //兄弟节点的悬停
    30             $(this).siblings().hover(function(){
    31                 $(this).css('display','list-item');
    32             },function(){
    33                 $(this).css('display','none');
    34             })
    35 
    36             
    37             
    38         },function(){
    39             $(this).siblings().css('display','none');
    40         });
    41 
    42         //兄弟节点的点击事件
    43         $(".type_selected").siblings().click(function(){
    44             if($(".type_selected").text()=="城市"){
    45                 $(".type_selected").text("职位");
    46             }else{
    47                 $(".type_selected").text("城市");
    48             }
    49             $(".type_selected").siblings().css("display","none");
    50         });
    51     })
    52 
    53  </script>
    54 
    55  <style type="text/css">
    56     
    57 
    58     #searchType{cursor:pointer;position:absolute;list-style:none;padding:0;margin:0;width:98px;background:#fff;left:-2px;top:0;}
    59 
    60 
    61     #searchType li{font-size:16px;height:23px;line-height:24px;padding:7px 22px;border:2px solid #91cebe;display:none;}
    62 
    63 
    64     #searchType li.type_selected{height:23px;border-left:2px solid #019875;border-right:2px solid #019875;border-top:0;border-bottom:0;display:block;}
    65  </style>
    66 
    67 
    68 </head>
    69 <body>
    70 
    71     
    72 
    73     
    74 
    75    <ul id="searchType">
        <li  class="type_selected" data-searchtype="1" style="display: list-item;"></li>
        <li  class="" data-searchtype="4" style="display: none;"></li>
        </ul>
    </body> 82 </html>

    就是从这个项目中积累了一点小知识,留住以便后用。还用这个小js效果也让我编写代码的思想有了一点改变,开始想着当点击下面一个li时,如何让上面的li隐藏,下面的li显示,然而我们换个角度来想这个问题,我们只需要把上面的li和下面li的文本互换一下就好了。无需做如上那么复杂的操作。

    今天系统的总结一下jQuery的选择器

    1、id选择器:选取元素的id$("#id")

    2、元素选择器:选取节点名$(p),$(div)

    3、子选择器:">"  选取某个节点下的子元素。 $('div>p')

    4、群组选择器:" ,"主要用于获取多个DOM元素;   各个选择的对象以逗号隔开获取多个DOM元素,单个DOM元素的选择方式不做要求 $('#id,  .className, div')

    5、后代选择器:后代DOM元素与父类元素以空格隔开,选取后代元素 $('div ul li a')

    6、通配符选择器:$(*) 所有的元素,在全局中使用消耗过多资源,没多大的用途;当在局部时适当时有很大的作用。$('ul li  *') ul li 下的所有元素。

    7、元素类选择器:当用元素名选择一个元素时,无法精确的选取某个DOM对象,此时元素类选择器就可以做到相对于精确的选择。$('div.className') 在元素名后面跟上". className",注意,之间不能有空格否则就成了后代选择器。

    8、元素id选择器:和元素类选择器比较类似。$('div#idName')。也是注意在元素名与#idName之前不能有空格,否则也成了后代选择器

    9、多类选择器:每个DOM元素可以有多个类,选择某个有多个类的元素可以使用多类选择器 $('.className1.className2') 注意多个类名之间不能有空格。否则就成了后代选择器

    高级选择器:

    1、后代选择器:之前介绍过,后代选择器就是中间由空格隔开,jQuery为后代选择器提供了一个方法find(),$('div').fin('p')查找div子元素为p元素的DOM对象

    2、子选择器:子选择儿子,不选择孙子节点 $('div>p') jQuery提供了一个方法 $('div').children()

    3、next选择器:$('div + p '),选取div后面第一个匹配的为P的元素 jQuery有对应的方法 next():选择后面匹配的第一个元素,如果下一个元素没有匹配则不作任何改变、必须是相邻的第一个;如果不进行第一个匹配,而是匹配后面所有的元素则是nextAll选择器 $('div~p') $('div').nextAll('p');

    nextUntil选择器:选择后面的所有元素知道遇到某个元素停止选择 $('div').nextUntil('p');

    4、属性选择器:[name=''],[type=''] 通过判断标签的属性,进行精确的选择DOM对象 $(input[type='text'])

    5、基本过滤器:

      :first 选取第一个元素 ,jQuery对应的方法有first()

      :last 选取最后一个元素,jQuery对应的方法有last()

      :not(selector) class不是selector的元素,jQuery对应的方法是not()

      :odd/:even 奇数偶数过滤

      eq(index) 等于index的元素,从0开始奇数 index为负数时,从后往前数从-1开始计数,jQuery对应的方法eq()

      :gt(index) 大于index的元素,正数从0开始计数,为负数时从=1开始计数

      :animated 正在执行动画的元素

      :focus 选择当前被焦点的元素

      :lt(index)小于index的元素

    6、内容过滤器

      :contains(text):选取含有text文本的元素

      :empty():选取不含子元素的jQuery元素

      :parent():选取含有子元素或文本的元素

    7、可见性过滤器

      :hidden 选取所有不可见的jQuery元素

      :visible 选取所有课件的jQuery元素

    8、子元素过滤器

      :first-child :获取每个父元素的第一个子元素
      :last-child:获取每个父元素最后一个子元素

      :only-child:获取只含有一个子元素的元素

      :nth-child(odd/even/eq(index)) 获取每个自定义的子元素。这里index从1开始计数

    部分jQuery提供的选取元素的方法

    parent:获取父元素对象

    parents:获取所有的祖先节点

    parentsUntil(x):获取所有的祖先节点,知道x元素位置位置

    is()

    child()获取子元素,不包括文本子元素;contentss():获取子元素,包括元素的文本子元素

    slice(satre,[end]):选取元素的子集,从state开始到end结束(不包括end),end可以默认不谢那么一直选到结尾

  • 相关阅读:
    vr这么火我来看看there.js
    简明现代魔法博客图书馆之php学习记录
    ecshop学习记录
    mysql学习笔记
    linux服务器自动备份mysql数据库
    thinkphp分页及分页样式
    php手册学习(2)
    非常不错的ajax原理总结
    最全的HTTP头部信息分析
    利用curl并发来提高页面访问速度
  • 原文地址:https://www.cnblogs.com/fsh1542115262/p/3709804.html
Copyright © 2011-2022 走看看