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. Mschart应用之曲线图表spline

    本文主要是Mschart应用之曲线图表spline,实现6个模拟数据的图表,其中数据源X轴为当前系统时间,Y轴是由随机函数产生的不同范围的随机数. 首先是自定义一个数据表,然后产生的数据添加到该数据表 ...

  2. HDU 1039 -Easier Done Than Said?

    水水的 #include <iostream> #include <cstring> using namespace std; ]; bool flag; int vol,v2 ...

  3. shell ps1 提示设置

    PS1="\[\033[01;37m\]\u\[\033[00m\]@\[\033[01;31m\]localhost \t\[\033[00m\]:\[\033[01;35m\]\w\[\ ...

  4. PHP zip压缩文件及解压

    PHP zip压缩文件及解压 利用ZipArchive 类实现 只有有函数.界面大家自己写 ZipArchive(PHP 5.3 + 已自带不需要安装dll) /** * 文件解压 * @param ...

  5. LVS客户端启动脚本

    在设置LVS客户端时,如果我们使用手工设置的话会比较麻烦.现在我们直接使用脚本来启动lvs-client就OK了,下面是一个简单的脚本. VIP地址:10.0.0.230,把文件放到/etc/init ...

  6. DataGridview 填写数字

    private DataGridViewTextBoxEditingControl CellEdit = null; // 声明 一个 CellEdit        private void dgv ...

  7. redhat系列yum本地源配置

    1.挂载光盘,本示例挂载在/mnt下. 2.清除系统带的.repo文件,rm -f /etc/yum.repos.d/* 3.编辑自己的repo文件,内容如下: [local_server]   (库 ...

  8. Linux内核之进程和文件共享

    1.Shell命令的执行和进程    Shell 命令可以是内部或者外部命令.    内部(内置)命令(internal (built-in) command)的代码本身就是shell进程的一部分.L ...

  9. Linux突然断电后文件丢失的问题

      原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://yuyongid.blog.51cto.com/10626891/168504 ...

  10. ubuntu下C编程,编译基础( 转)

    buntu下C编程,编译基础     C 编程中相关文件后缀 .a 静态库 (archive) .c C源代码(需要编译预处理) .h C源代码头文件 .i C源代码(不需编译预处理) .o 对象文件 ...