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. 【转】Android的线程使用来更新UI----Thread、Handler、Looper、TimerTask

    方法一:(java习惯,在android不推荐使用) 刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题 new Thread( new Runnable() { ...

  2. AndroidUI--SlidingMenu使用例子

    SlidingMenu简介: SlidingMenu的是一种比较新的设置界面或配置界面效果,在主界面左滑或者右滑出现设置界面,能方便的进行各种操作.目前有大量的应用都在使用这一效果.如Evernote ...

  3. 推荐书目 - C++学习资料

    前言 在本文的前半部分我我会谈谈 我看过的书,和我个人的一些理解 ,并且会提供 C++标准委员会相关链接 和 C++第三方轮子/库总结 .本文的后半部分翻译了来自 The Definitive C++ ...

  4. 移动端影像解决方案Adobe Creative SDK for ios

    移动端影像解决方案Adobe Creative SDK for ios 2015-12-20 分类:整理 阅读(390) 评论(0)  老牌影像界泰斗不甘落寞,正式推出了Adobe Creative ...

  5. 自定义清除重复uses-permission申明的AS插件

    分享一个我刚到天下布医工作时,写的一个android studio插件. 做安卓项目时,经常继承一些第三方sdk,这些sdk都会申请权限,导致AndroidManifest.xml中的uses-per ...

  6. MySql的一些问题

    问题1:卸载重装mysql时,报1045和2003错误. 解决:点击skip,跳过这个错误.进到my.ini,在mysqld下面加一句:skip-grant-tables,保存.重启mysql服务,在 ...

  7. webstrom 常用快捷键

    最近在学习javascript,同时发现了一款非常好用的IDE webstrom 现在记录改IDE的快捷键 1. ctrl + shift + n: 打开工程中的文件,目的是打开当前工程下任意目录的文 ...

  8. [置顶] 【cocos2d-x入门实战】微信飞机大战之三:飞机要起飞了

    转载请表明地址:http://blog.csdn.net/jackystudio/article/details/11730601 不过明眼人一看就知道起飞的不是飞机,是背景,相对运动引起的错觉. 1 ...

  9. windows、linux创建子进程

    在windows下创建子进程较常用到的API就是CreateProcess,可以通过以下的方式启动一个新进程: STARTUPINFO si = {0};                 PROCES ...

  10. java 多线程使用方法及Socket的使用

    public class newThread implements Runnable{ public void run(){ dosome(); } public void dosome(){ Sys ...