jQuery-认识JQuery,jQuery选择器
认识JQuery:
1、window.onload与$(document).ready()的区别
|
window.onload |
$(document).ready() |
|
|
执行时机 |
必须等待网页中的所有内容加载完毕后才能执行 |
网页中所有DOM结构绘制完毕后就执行,可能DOM元素关联的东西并没有完全加载完 |
|
编写个数 |
不能同时编写多个方法 |
可以同时编写多个 |
|
简化写法 |
$(document).ready(function(){ //… }) |
2、jQuery对象以及DOM对象
jQuery:
$(”#foo”).html( ); //获取id为foo的元素内的html代码,html( )是jQuery里的方法
在DOM中,
document.getElementById("foo").innerHTML;
3、
获取jQuery对象 : var $variable = jQuery对象
获取DOM对象 : var variable = DOM对象
4、jQuery对象不能使用DOM中的方法,要将转为DOM对象才可以使用 [index] , get(index)
jQuery是一个类似于数组的对象,可以通过[index]的方法得到相应的DOM对象
方法1:
var $cr = $("#cr") ; //jQuery对象
var cr = $cr[0]; //DOM对象
alert(cr.checked) //检测这个checkbox是否被选中
方法2:
var $cr = $("#cr"); //jQuery对象
var cr = $cr.get(0); //DOM对象
alert(cr.chencked);
5、DOM对象转化为jQuery对象:只要用$()将DOM对象包起来就可以得到一个jQuery对象
jQuery代码:
var cr = document.getElementById("cr"); //DOM对象
var $cr = $(cr) //jQuery对象
6、
$(document).ready(function(){
var $cr = $("#cr"); //jQuery对象
var cr = $cr[0]; //DOM对象
$cr.click(function(){
if(cr.checked){ //DOM判断
alert("感谢你的支持,你可以继续操作");
}
})
})
$(document).ready(function(){
var $cr = $("$cr"); // jQuery对象
$cr.click(function(){
if($cr.is(":checked")){ //jQuerry判断
alert("感谢你的支持,你可以继续操作");
}
})
})
jQuery选择器:
1、<p class="demo"> aaaa </p> ----在jQuery中获取到节点:$(".demo")
2、JS中:
<div>test</div>
<script type="text/javascript">
document.getElementById("tt").style.color = "red";
------会报错,在文档中没有id=tt的节点
</script>
<div>test</div>
<script type="text/javascript">
if(document.getElementById("tt")){
document.getElementById("tt").style.color = "red";
------不会报错,在文档中即使没有id=tt的节点
}
</script>
jQuery中:
<div>test</div>
<script type="text/javascript">
$('#tt').css("color","red");
-----在jQuery中是不需要判断该节点是否存在的,
</script>
$('#tt')获取的永远是对象,即使网页中没有此元素
3、jQuery中检测某个元素是否存在的时候,不能使用以下代码,应该利用对象的长度或者转化为DOM对象
if( $('#tt') ){
----错误的
}
if( $('#tt').length > 0){
//do Something
}
if( $('#tt')[0] ){
//do Something
}
4、
$("div,span,p.myClass")選取所有的<div>,<span>,以及class為myClass的<P>標籤的一組標籤 ----集合元素
基本选择器:
$("#one").css("background","#bbffaa");
$(".mini").css("background","#bbffaa");
$("div").css("background","#bbffaa");
$("*").css("background","#bbffaa");
$("span, #two").css("background","#bbffaa");
层次选择器:
$("div span")选取<div>里的所有span元素
$("div > span")选取<div>元素下,元素名为<span>的子元素
$(".one + div")选取class为one的下一个<div>的同辈元素
$("#two ~div")选取id为two的元素后面的所有<div>同辈元素
过滤选择器:
$("div :first")选取所有<div>元素后面的第一个<div>元素
$("div :last")选取所有<div>元素后面的最后一个<div>元素
$("input :not(.myClass)")选取class不是myClass的<input>元素
$("input :even")选取索引是偶数的<input>元素
$("input :odd")选取索引是奇数的<input>元素
$("input :eq(1)")选取索引等于1的<input>元素
$("input :gt(1)")选取索引大于1的<input>元素
$("input :lt(1)")选取索引小于1的<input>元素
$("div :animated")选取正在执行动画的<div>元素
$(":focus")选取当前获取焦点的元素
内容过滤选择器:
$("div :contains('我')")选取含有文本 “我”的<div>元素
$("div :empty")选取不包含子元素(包括文本元素)的<div>空元素
$("div :has(p)")选取含有<p元素的<div>元素
$("div :parent")选取拥有子元素(包括文本元素)的<div>元素
可见性过滤选择器:
$(":hidden")选取所有的不可见元素,包含<input type="hidden" />,<div style="display:none;">和<div style="visibility:hidden;">等元素
$("input :hidden")
$("div :visible") 选取所有的可见的div元素
属性过滤选择器:
$("div[id]") 选取拥有属性id的元素
$("div[title=test]") 选取title为test的div元素
$("div[title != test]") 选取title不等于test的div元素,没有改属性的也会被选中
$("div[title ^= test]") 选取title属性以“test”开始的div元素
$("div[title $= test]") 选取title属性以“test”结束的div元素
$("div[title *= test]") 选取title属性含有“test”的div元素
$('div[title |= "en"]') 选取title属性等于en获取以en为前缀(- 分隔)的元素
$("div[title ~= "uk"]") 选取title属性用空格分隔的值中包含字符uk的元素
$("div[id][title $= 'test']") 选取拥有属性id,并且属性title以“test”结束的div元素
子元素过滤选择器:
:nth-child(index/even/add) :选取每个父元素下的第index个子元素或者奇偶元素,index从1开始,为每一个符合条件的父元素匹配子元素
:first-child :选取每个父元素的第一个子元素
:last-child :选取每个父元素的最后一个子元素
:only-child 如果某个元素是它父元素中唯一的子元素,则会被匹配
表单对象属性过滤器:
:enabled :选取所有可用元素 ---disabled
:disabled :选取所有不可用的元素 ---disabled
:checked :选取所有被选中的元素
:selected :选取所有被选中的选项元素(下拉列表) $("select option:selected")选取所有被选中的选项元素
获取内容的是text()方法
表单选择器:
:input
:text
:password
:radio
:checkbox
:submit
:image
:reset
:button
:file
:hidden
5、
可以使用next()方法代替$('prev + next')选择器
$(".one + div") 等价于 $(".one").next("div")
可以使用nextAll()方法代替$('prev ~sibling')
$("#prev ~div") 等价于 $("#prev").nextAll("div")
sibling()与$('prev ~sibling')选择器进行比较,sibling()与位置无关
//选取#prev之后的所有同辈div元素
$("#prev ~div").css("background","#bbffaa");
//同上
$("#prev").nextAll("div").css("background","#bbffaa");
//选取##prev的所有同辈div元素,与前后位置无关
$("#prev").sibling("div").css("background","#bbffaa");
6、选择器中含有空格,多一个空格或少一个空格也许会得到截然不同的结果
//选取class为“test”的元素里面的隐藏元素
var $a = $('.test :hidden'); ---带空格的 ---长度为4
//选取掩藏的class为“test”的元素
var $b = $('.test:hidden'); ---不带空格的 ---长度为3
jQuery-认识JQuery,jQuery选择器的更多相关文章
- jQuery入门(1)jQuery中万能的选择器
jQuery入门(1)jQuery中万能的选择器 jQuery入门(2)使用jQuery操作元素的属性与样式 jQuery入门(3)事件与事件对象 jQuery入门(4)jQuery中的Ajax()应 ...
- jquery笔记之属性选择器 查找以某种条件开头的页面元素
jquery笔记之属性选择器 查找以某种条件开头的页面元素 转载:http://www.blogbus.com/amyqiong-logs/78340326.html $("div[id]& ...
- jQuery学习-什么是jquery? Js与jquery之间的关系 Jquery选择器
1. 什么是jQuery以及学习的意义等 jQuery是一个js库 JS库是什么? 把常用的方法,进行封装,封装到一个单独的js文件当中,要用的时候直接调用. 学习jQuery主要学什么? 学习jQ ...
- 从零开始学习jQuery (二) 万能的选择器
本系列文章导航 从零开始学习jQuery (二) 万能的选择器 一.摘要 本章讲解jQuery最重要的选择器部分的知识. 有了jQuery的选择器我们几乎可以获取页面上任意的一个或一组对象, 可以明显 ...
- 【学习笔记】锋利的jQuery(一)选择器
一.要点阐述 1,jQuery创建于2006年1月的一个开源项目,强调理念是“write less,do more”,压缩后大小30KB左右.. 2,jQuery里的方法都被设计程自动操作对象集合,而 ...
- 汇总jQuery的61种选择器及示例
汇总jQuery的61种选择器及示例 恋痿喃 ㄍń稀广 因罘乐睽 ú燔蒇 骤幄觳 ч豹 齑骝氮铷 宅廓Ω孓 锏遒 荛猩ㄜ彬 芡钷ж ┊贩错鹌 掩饰着可还是几步就窜到了门口看着这个让她 ...
- jQuery(2)——选择器
选择器 利用jQuery选择器,可以非常便捷和快速地找出特定的DOM元素,然后为它们添加相应的行为.jQuery的行为规则都必须在获取到元素后才能生效. [jQuery选择器的优势] (1)简洁的写法 ...
- JQuery学习笔记——基础选择器
第一篇博客,现在原生安卓需求不大了.招聘的Android工程师都需要附带更多的其他技术.这也是开启我学习前端之路的开端.前端时间看了HTML.CSS等,在界面渲染这一块,就不多记录博客了.现在学习着J ...
- JQuery学习笔记——层级选择器
JQuery学习笔记--层级选择器 上一篇学习了基础的五种选择,分别是id选择器,class选择器,element选择器,*选择器 和 并列选择器.根据手册大纲,这篇学习的是层级选择器. 选择器: 1 ...
- (jQuery知识点整理-含有选择器)
第一单元 jQuery介绍: javaScript ...
随机推荐
- October 7th 2016 Week 41st Friday
The land didn't move, but moved; the sea was not still, yet was still. 大地止而亦行,大海动而亦静. Remember that ...
- codevs 2851 菜菜买气球
dp加二分法 链接:http://codevs.cn/problem/2851/ #include<iostream> #include<vector> #include< ...
- MyBatis魔法堂:即学即用篇
一.前言 本篇内容以理解MyBatis的基本用法和快速在项目中实践为目的,遵循Make it work,better and excellent原则. 技术栈为My ...
- Android消息推送怎么实现?
在开发Android和iPhone应用程序时,我们往往需要从服务器不定的向手机客户端即时推送各种通知消息,iPhone上已经有了比较简单的和完美的推送通知解决方案,可是Android平台上实现起来却相 ...
- .NET MVC4 数据验证Model(二)
一.概述 MVC分为ViewModel.Control.View,对数据的封装MVC做的很好,确实是不错的WEB框架,针对MVC的ViewModel封装的也是相当的不错,最近做一个MVC的项目,采 ...
- 攻城狮在路上(叁)Linux(二十九)--- 完整备份工具:dump以及restore
一.dump命令: 该命令既可以针对整个文件系统进行备份,也可以仅针对目录来备份.还可以指定不同的备份等级(-0~-9共10个等级). dump -W:列出在/etc/fstab中具有dump设置的分 ...
- 攻城狮在路上(叁)Linux(二十三)--- linux磁盘参数修改(设备代码、设备名)
一.mknod:设置设备代码 linux中,所有的设备都是用文件来表示,文件通过major与minor数值来判断. major为主设备代码,minor为设备代码(需要查询),示例如下: /dev/hd ...
- Java Hour 66 Spring 相关
这章简单的来了解下Spring 和 Hibernate 是如何勾搭在一起的. <bean id="sessionFactory" class="org.spring ...
- js判断当前的访问是手机/电脑
<script type="text/javascript"> var commonURL = 'http://www.xxx.com/'; function mobi ...
- hdu 1517 博弈 **
博弈题: 题意:2 个人玩游戏,从 1 开始,轮流对数进行累乘,直到超过一个指定的值. 解题思路:如果输入是 2 ~ 9 ,因为Stan 是先手,所以Stan 必胜如果输入是 10~18 ,因为Oll ...