jquery-李炎恢学习视频学习笔记。自己手写。

简单的选择器
    css 写 法: #box{ color:#f00;}    //id选择器
    jquery获取:$('#box').css('color','#f00');//获取DOM对象,并添加行为,id是唯一的,返回单个元素生效

css 写 法: .box{ color:#f00;}    //class选择器
    jquery获取:$('.box').css('color','#f00');//获取DOM对象,并添加行为,返回多个元素生效

css 写 法: div{ color:#f00;}    //标签选择器
    jquery获取:$('div').css('color','#f00');//获取DOM对象,并添加行为,返回多个元素生效

$(function(){
    $('#box').css('color','blue');//添加行为(行为中包括样式)
    $('div').css('color','#f00');
    $('.box').css('color','#f00');

//alert($('#box').size());
    //alert($('.pox').size());
    alert($('div').size());    //用get 0 1 2获取对应的第几个

//很多情况下有动态DOM生成的问题,会导致执行不存在的id选择器

if($('#pox').size()>0){
        $('#pox').css('color','red');
    }

$('div').get(1).css('color','#000');//用get(1)获取第二个div,改变字体颜色为#000。-get原生
    $('div').get(1).css('color','#000');//用eq(1)获取第二个div,改变字体颜色为#000。-
    alert($('div').length);    //属性不用加()

$('#box > p ').css('color','blue');//jquery兼容ie6
    $('#pox').css('color','blue');
   
})

$(function(){
//原生js:
    if(document.getElementById('pox')){    //判断是否存在--防止动态DOM生成问题导的ID不存在问题
        document.getElementById('pox').style.color='blue';//
    }

//jquery:--解决了容错的问题
    $('#box').css('color','blue');

})

if($('#pox').get(0)){

}
if(('#pox')[0]){
}

常规选择器:
$(function(){
    //群组选择去==》相同的样式进行合并
    span,.pox,#box{color:red;}//--->css代码
    span,p,#box{color:blue;}//--->css代码
    $('#div,p,span').css('color','blue');
    $('#box,.pox,span').css('color','red');
    
    //后代选择器
    ul li a{color:red;}//css代码
    $('ul li a').css('color','red');

//通配符选择器
    *{color:#ccc;}
    $('*').css('color','#ccc');

/*注意:在全局范围使用*(通配符),会极大地消耗资源,不建议在全局使用*/

<li>11111</li>
    <li>22222</li>
    <li><em>123333</em></li>

$('ul li a,ul li em').css('color','blue');
    $('ul li *').css('color','blue');
    alert($('ul li *').size());//通配符选择器一般用在局的环境内

//在id和class中指定元素前缀
    $('div.box');        //限定是.box元素获取的必须是是div
    $('p#box div.side');    //同上

//class有一个特殊的模式,就是同一个dom节点可以声明多个class类,对于这种格式,有多个class选择器可以使用,但要注意和class群组选择器的区别。、

.box,.pox{color:red;}//群组选择器
    .box.pox{color:red;}//双class选择器,ie6会出异常
    $('.box.pox').css('color','red');

$('div#box p ul li a#link');//写法无错,选择器越复杂,那么字符串解析就越慢-->jquery的选择器从右边往左一层层的解析
$('#link');//单个id,不需要字符型的解析就可以获取到。--》id一个页面只有一个。这个速度是最快的。
})

/*注意:构造选择器时,有一个通用的优化原则:只追求必要的确定性,选择器筛选越复杂,jquery内部的选择器引擎处理字符串的时间就越长*/

jquery学习(2)--选择器的更多相关文章

  1. jquery 学习(一) - 选择器

    基本选择器(html) <div>123</div> <div id="n1">123</div> <span>321& ...

  2. jQuery学习- 子选择器与可见性选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. jQuery学习- 内容选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. jQuery学习- 层叠选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. jQuery学习- 位置选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. jQuery学习-属性选择器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. jQuery学习-基本选择器

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  8. jQuery学习之------选择器

    a.id选择器 <div id=”test1”></div> var div1=$(“#test1”);                //同css的写法一样id选择器用#号实 ...

  9. jquery学习:选择器&dom操作

    分类; 1.基本选择器 1.标签选择器(元素选择器) *  语法:$("html标签名”) 获得所有匹配标签名称的元素 2.id选择器 *  语法:$("#id的属性值" ...

  10. jQuery学习(三)——选择器总结

    1.基本选择器 id选择器:$(“#id名称”); 元素选择器:$(“元素名称”); 类选择器:$(“.类名”); 通配符:* 多个选择器共用(并集) 案例代码: <!DOCTYPE html& ...

随机推荐

  1. 常用的CSS清除浮动的方法优缺点分析(个人学习笔记)

    一.抛一块问题砖(display: block)先看现象: 分析HTML代码结构: <div class="outer"> <div class="di ...

  2. 前端开发的常用js库

    验证: jQuery formValidator,Validform; 提示框: artDialog, lhgDialog,jBox,jQuery textbox plugin 文件批量上传:uplo ...

  3. ajax应用篇

    ajax简介 AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.Ajax不是一种新的编程语言, ...

  4. 14-利用SVD简化数据

    参考:http://blog.csdn.net/geekmanong/article/details/50494936 http://www.2cto.com/kf/201503/383087.htm ...

  5. bash快捷建-光标移到行首、行尾等

    转自:http://digdeeply.org/archives/12131599.html ctrl键组合ctrl+a:光标移到行首.ctrl+b:光标左移一个字母ctrl+c:杀死当前进程.ctr ...

  6. android模块

    网络模块 1.URL --------openStream() return InputStream --------openConnection() return URLConnection 2.U ...

  7. EMV标准

    EMV标准是由国际三大银行卡组织--Europay(欧陆卡,已被万事达收购).MasterCard(万事达卡)和Visa(维萨)共同发起制定的银行卡从磁条卡向智能IC卡转移的技术标准,是基于IC卡的金 ...

  8. schema://host[:port#]/path/.../[?query-string][#anchor]

    1:http协议状态200 OK最常见的就是成功响应状态码200了, 这表明该请求被成功地完成,所请求的资源发送回客户端 302 Found重定向,新的URL会在response 中的Location ...

  9. at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)

    at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333) 原因: null request

  10. 很详细、很移动的Linux makefile教程:介绍,总述,书写规则,书写命令,使用变量,使用条件推断,使用函数,Make 的运行,隐含规则 使用make更新函数库文件 后序

    很详细.很移动的Linux makefile 教程 内容如下: Makefile 介绍 Makefile 总述 书写规则 书写命令 使用变量 使用条件推断 使用函数 make 的运行 隐含规则 使用m ...