今天用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(){});前面函数是鼠标进入区域时触发的操作,后面函数是鼠标离开区域时触发的操作

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Basic Form - jQuery EasyUI Demo</title>
<link rel="stylesheet" type="text/css" href="../../themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="../../themes/icon.css">
<link rel="stylesheet" type="text/css" href="../demo.css">
<script type="text/javascript" src="../../jquery.min.js"></script>
<script type="text/javascript" src="../../jquery.easyui.min.js"></script> <script type="text/javascript">
$(function(){ $('.type_selected').text("公司"); //显示li的悬停事件
$('.type_selected').hover(function(){
$(this).siblings().css('display','list-item');
if($(this).text()=="公司"){
$(this).siblings().text("职位");
}else{
$(this).siblings().text("公司");
} //兄弟节点的悬停
$(this).siblings().hover(function(){
$(this).css('display','list-item');
},function(){
$(this).css('display','none');
}) },function(){
$(this).siblings().css('display','none');
}); //兄弟节点的点击事件
$(".type_selected").siblings().click(function(){
if($(".type_selected").text()=="城市"){
$(".type_selected").text("职位");
}else{
$(".type_selected").text("城市");
}
$(".type_selected").siblings().css("display","none");
});
}) </script> <style type="text/css"> #searchType{cursor:pointer;position:absolute;list-style:none;padding:0;margin:0;width:98px;background:#fff;left:-2px;top:0;} #searchType li{font-size:16px;height:23px;line-height:24px;padding:7px 22px;border:2px solid #91cebe;display:none;} #searchType li.type_selected{height:23px;border-left:2px solid #019875;border-right:2px solid #019875;border-top:0;border-bottom:0;display:block;}
</style> </head>
<body> <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>
</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可以默认不谢那么一直选到结尾

jquery一些总结的更多相关文章

  1. Angular杂谈系列1-如何在Angular2中使用jQuery及其插件

    jQuery,让我们对dom的操作更加便捷.由于其易用性和可扩展性,jQuer也迅速风靡全球,各种插件也是目不暇接. 我相信很多人并不能直接远离jQuery去做前端,因为它太好用了,我们以前做的东西大 ...

  2. jQuery UI resizable使用注意事项、实时等比例拉伸及你不知道的技巧

    这篇文章总结的是我在使用resizable插件的过程中,遇到的问题及变通应用的奇思妙想. 一.resizable使用注意事项 以下是我在jsfiddle上写的测试demo:http://jsfiddl ...

  3. Jquery的点击事件,三句代码完成全选事件

    先来看一下Js和Jquery的点击事件 举两个简单的例子 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  4. jQuery实践-网页版2048小游戏

    ▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...

  5. jquery和Js的区别和基础操作

    jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...

  6. jQuery之ajax实现篇

    jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...

  7. 利用snowfall.jquery.js实现爱心满屏飞

    小颖在上一篇一步一步教你用CSS画爱心中已经分享一种画爱心的方法,这次再分享一种方法用css画爱心,并利用snowfall.jquery.js实现爱心满屏飞的效果. 第一步: 利用伪元素before和 ...

  8. jQuery的61种选择器

    The Write Less , Do More ! jQuery选择器 1. #id : 根据给定的ID匹配一个元素 <p id="myId">这是第一个p标签< ...

  9. jquery.uploadify文件上传组件

    1.jquery.uploadify简介 在ASP.NET中上传的控件有很多,比如.NET自带的FileUpload,以及SWFUpload,Uploadify等等,尤其后面两个控件的用户体验比较好, ...

  10. 浅谈 jQuery 核心架构设计

    jQuery对于大家而言并不陌生,因此关于它是什么以及它的作用,在这里我就不多言了,而本篇文章的目的是想通过对源码简单的分析来讨论 jQuery 的核心架构设计,以及jQuery 是如何利用javas ...

随机推荐

  1. leveldb学习:sstable(2)

    block写入:block_builder block.h和.cc里定义了block的entry存储格式和restart,提供了entry的查找接口以及迭代器.那么怎样往写block里写entry呢? ...

  2. Process Explorer

    https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer Ever wondered which program ...

  3. 智课雅思词汇---十二、vent是什么意思

    智课雅思词汇---十二.vent是什么意思 一.总结 一句话总结:词根:ven, vent = come, 表示“来” 词根:vent = wind 风 1.tact是什么意思? 词根:-tact-, ...

  4. ubuntu18.04中安装iNode

    title: ubuntu18.04中安装iNode toc: false date: 2018-09-01 17:52:20 categories: methods tags: ubuntu iNo ...

  5. hihocoder1415 重复旋律3

    思路: 扫一遍height 判一下即可 //By SiriusRen #include <cstdio> #include <cstring> #include <alg ...

  6. jQuery学习(八)——使用JQ插件validation进行表单校验

    1.官网下载:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ 目录结构: 2.引入jquery库和validation插件 ...

  7. 【原创】rman备份出现ORA-19625

    [oracle@sunny stage]$ rman target / Recovery Manager: Release 10.2.0.1.0 - Production on Sun Mar 18 ...

  8. 之前的大数相加存在bug,这个ac通过了

    #include <iostream> #include <string> /*project:两个大整数相加 **@author:浅滩 **data:2019.05.15 * ...

  9. Iterator(迭代器) 和generator

    数组是可迭代的 var a = []; console.dir(a); 发现这里有一个Symbol.iterator ,说明它是可迭代的. object 是不可以迭代的 var a = {} cons ...

  10. sql 技巧

    1.想把一张表的 某个字段或多个字段 的 所有数据 复制到另外一张表里  insert into 表名(字段) select (字段) from 表名 2.from Users u , IN(u.ro ...