05_jQuery(一)

JQuery(一)
  • JQuery文档非常完善
  • 今日重点:
    • JQ选择器的学习
  • 概述
    • jQuery是javascript的一个库,很轻量级
    • 在实际开发中,都不会使用javascript,即使使用,也是很少的一部分公司使用,一般都是用javascript封装好的一些小型框架
    • jQuery兼容CSS3,jQuery2.0之后不再支持ie6,ie7,ie8
    • jQuery1.8.3用的最多
  • 引入JQ
<!--现在1.8.3用的比较多-->
<script src="../../js/jquery-1.8.3.js"></script>
<script type="text/javascript">
    $(function(){
        alert("Hello JQuery!");
    });
</script>
  • jQuery 和 javascript页面加载区别

    • javascript页面加载区别
    /*传统js如果调用两次window.onload会存在覆盖问题,后面的覆盖前面的*/
    window.onload = function() {alert('hello world1')}
    window.onload = function() {alert('hello world2')}
    
    • jQuery加载比js快
      • JQ:dom加载完成后就会加载
      • JS:整个页面加载完毕再调用
    • jQuert不存在覆盖问题,顺序执行
    jQuery(document).ready(function() { //1
        alert('hello world1');
    });
    $(document).ready(function(         //2
        alert('hello world2');
    ));
    $(function(                         //3
        alert('hello world3')
    ));
    /*
    简写方式
    $(function(){})
    */
    
  • JQ获取元素

//页面加载
$(function(){
    //传统方式获取
    document.getElementById('id').onclick = function(){
        location.href = 'http://www.google.com'
    }
    //JQ方式获取
    $('#id').click(function(){
        location.href = 'http://google.com';
    })
});
  • DOM对象和jQuery对象的转换
//JS的dom操作
document.getElementById('span_1').innerHTML = 'xxxx';
//jQuery的dom操作
$(function(){//docuent加载完后执行,不加这行代码,事件不能绑定
    $('#btn').click(function(){
        //jQuery获取的对象不能调用js对象的方法,反过来也一样
        //$('#span_1').innerHTML = 'xxxx';
        $('#span_1').html('xxxx');
    });
});
//jQuery转DOM
$('#btn').click(function(){
    //jQuery获取的对象转换为DOM对象
    //$('#span_1').get(0) //这样就编程DOM对象
    $('#span_1').get(0).innerHTML = 'xxxx';
    $('#span_1')[0].innerHTML = 'xxxx';
});
//DOM转jQuery
function fun() {
    var spanEle = document.getElementById('#span_1');
    //$(spanEle) //这样就转成了Jquery对象了
    $(spanEle).html('xxxx');
}
jQuery选择器
  • 基本选择器

    • id选择器:"#id"
    $("#id_name").css("background-color","pink");
    
    • 类选择器:".class"
    $(".class_name").css('background-color',"yellow");
    
    • 元素选择器:
    $("div").css("background-color","#FF6500");
    
    • 匹配所有的元素(*):只要是标签都匹配
    $("*").css("background-color",'red');
    
    • 并集选择器:select1,select2,select3(将多个选择器匹配的到的元素合并后返回)
    //选择id为id_name并且类为class_name的元素
    $("#id_name,.class_name").css("background-color","#FF6500");
    
  • 层级选择器

    • 在给定的祖先元素下匹配所有的元素(子孙关系)
    $("body div").css("background-color","paleturquoise");
    
    • 给定父元素下的所有子元素(父子关系)
    $("body>div").css("background-color","gold");
    
    • 匹配所有紧接在prev元素后的next元素(同桌)
    //id为two后紧挨着的div
    $("#two+div").css("background-color",'#FF6500');
    
    • 匹配prev元素之后的所有siblings元素(兄弟)
    //id为one的所有div兄弟元素
    $("#one~div").css('background-color',"#FF0000");
    
  • 基本过滤器

    • 第一个元素
    //body下的第一个div元素
    $("body>div:first").css("background-color",'pink');
    
    • 最后一个元素
    //body下最后一个div
    $("body>div:last").css("background-color","blueviolet");
    
    • 奇数集合
    # body下所有div元素中序号为基数的div集合
    $("body div:odd").css("background-color","yellowgreen");
    
    • 偶数集合
    $("body div:even").css("background-color","red");
    
  • 属性选择器

//所有有id属性的div元素
$("div[id]").css("background-color",'yellow');
//所有id为two的所有div元素
$("div[id='two']").css('background-color',"#FF0000");
  • 表单选择器
$(":input"):查找所有的input元素
$(":text"):查找所有文本框
$(":password"):查找所有密码框
$(":radio"):查找所有单选按钮
$(":checkbox"):查找所有复选框
$(":submit")
$(":image")
$(":reset")
$(":button")
$(":file")
jQuery弹出广告图片
<script>
    $(function(){
        //1.书写显示广告图片的定时操作
        time = setInterval("showAd()",3000);
    });
    
    //2.书写显示广告图片的函数
    function showAd(){
        //3.获取广告图片,并让其显示
        //$("#img2").show(1000);
        //$("#img2").slideDown(5000);
        $("#img2").fadeIn(4000);
        //4.清除显示图片定时操作
        clearInterval(time);
        //5.设置隐藏图片的定时操作
        time = setInterval("hiddenAd()",3000);
    }
    
    function hiddenAd(){
        //6.获取广告图片,并让其隐藏
        //$("#img2").hide();
        //$("#img2").slideUp(5000);
        $("#img2").fadeOut(6000);
        //7.清除隐藏图片的定时操作
        clearInterval(time);
    }
</script>
  • toggle使用
<div>
    <input type="button" value="显示/隐藏" id="btn" /><br />|
    ![](../img/xxxxxx.gif)
</div>

<script type="text/javascript" src="../js/jquery-1.8.3.js" ></script>
<script type="text/javascript">
    $(function(){
        $("#btn").click(function(){
            $("#img1").toggle();
        });
    });
</script>
jQuery隔行换色
<script type="text/javascript">
    $(function(){
        $("tbody>tr:even").css("background-color","gold");
        $("tbody>tr:odd").css("background-color","pink");
    });
</script>
  • 通过JQ设置CSS一般不自己写,都是通过引用UI提供的CSS样式
<!--引入UI给的css样式-->
<link rel="stylesheet" href="../css/style.css" />

$("tbody tr:even").addClass("class_name");
$("tbody tr:even").removeClass("class_name");
//3.获取tbody下面的奇数行并设置背景颜色
$("tbody tr:odd").addClass("class_name");
jQuery全选全不选
<script>
$(function(){
    $("#select").click(function(){
        //获取下面所有的 复选框并将其选中状态设置跟编码的前端 复选框保持一致。
        //attr方法与JQ的版本有关,在1.8.3及以下有效。
        $("tbody input").attr("checked",this.checked);
        $("tbody input").prop("checked",this.checked);
    });
});
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容

  • jQuery基础 什么是JQ?一个优秀的JS库,大型开发必备JQ的好处?一简化JS的复杂操作二不再需要关心兼容性三...
    幺七阅读 935评论 0 2
  • 通过jQuery,您可以选取(查询,query)HTML元素,并对它们执行“操作”(actions)。 jQuer...
    枇杷树8824阅读 649评论 0 3
  • 一)jQuery九类选择器【参见jQueryAPI.chm手册】 目的:通过九类选择器,能定位web页面(HTML...
    奋斗的老王阅读 1,034评论 0 51
  • //------------------------- 第一章 认识JQuery ----------------...
    米塔塔阅读 699评论 0 9
  • 03101玮玮 这本绘本是儿子暑假学校布置的必读书,男孩仿佛和青蛙较上了劲,还是孩子都有模仿的天性?一番比较...
    黄玮玮阅读 153评论 0 0