jq知识体系

1 jQuery基础语法

1.1 jquery语法结构

$('选择器').事件名(function(){})

$(document).ready(function(){
    $('.list li').click(function(){
        $(this).css({
            'background':'#fff',
            'color':'red'
        })
    })
})

1.2 设置css属性

  • (单个属性设置) $(selector).css('属性','属性值');
$('p').css({
    'color':'#fff',
    'font-size':'18px',
    'background':'blue'
})
  • (多个属性设置)
    $(selector).css({'属性':'属性值','属性':'属性值'})
$('p').css({
    "color":"#fff",
    "font-size":"18px",
    "background":"blue"
});
  • (读取CSS属性) $(selector).css("属性");
$("p").css("color");

1.3 基本选择器

  • a(标签选择器)——
$("p").css({"font-size":"18px","color":"#fff"});
  • b(类选择器) ——
$(".param").css({"font-size":"20px","background":"red"});
  • c(ID选择器) ——
$("#only").css({"color":"#fff","background":"#000"});
  • d(并集选择器)——
$("div,p").css({"font-size":"14px"});

1.4 层级选择器

  • a(后代选择器)——
$(".contain p").css({"font-size":"20px","background":"red"});
  • b(子选择器)——
$(".contain > p").css({"color":"#fff","background":"#000"});

1.5 属性选择器

  • 仅属性[attribute]
$('p[name]').css({
    'font-size':'16px',
    'text-align':'center'
})
  • 带属性值[attribute=value]

1.6 过滤选择器

  • :first 选取第一个元素 $('li:first')
  • :last 选取最后一个元素 $('li:last')
  • :even 选取索引是偶数的所有元素 $('li:even')
  • :odd 选取索引是奇数的所有元素 $('li:odd')
  • :eq(index) 选取索引等于index的元素 $('li:eq(1)')
  • :gt(index) 选取索引大于index的元素 $('li:gt(1)')
  • :lt(index) 选取索引小于index的元素 $('li:lt(1)')
  • :header 选取所有标题元素,如h1~h6 $(':header')

2 jQuery事件

2.1 window事件

2.1.1 jQuery与js加载函数的区别

  • js在网页所有元素加载完毕后才执行,jq只需dom准备就绪
  • js加载函数只执行一次,jq可执行多次
  • js可简写,jq可简写成 $(function(){ })

2.2 鼠标事件

  • click() 触发或将函数绑定到指定元素的click事件
$('#btn').click(function(){
    $('.more').css('display','none');
})
  • mouseover() 触发或将函数绑定到指定元素的mouseover事件
$('#btn2').mouseover(function(){
    $('#box2').show();
});
  • mouseout() 触发或将函数绑定到指定元素的mouseout事件
$('#btn2').mouseout(function(){
    $('#box2').hide();
});

2.3 键盘事件

  • keydown() 触发或将函数绑定到指定元素的keydown事件
$(document).keydown(function(event){   //键盘按下事件
    console.log(event.keyCode);
});
  • keyup() 触发或将函数绑定到指定元素的keyup事件
$(document).keyup(function(event){  //键盘释放事件
    console.log(event.keyCode);
});

2.4 表单事件

  • focus() 触发或将函数绑定到指定元素的focus事件
$('input:eq(0)').focus(function() {
    $(this).val('请输入昵称').removeClass('jingshi');
});
  • blur() 触发或将函数绑定到指定元素的blur事件
$('input:eq(0)').blur(function() {
    $(this).val('改昵称已被注册').addClass('jingshi');
});

2.5 绑定事件

bind(type,[data],fn)

  • 绑定单个事件
$('.top-m .on').bind('mouseover',function(){
    $('.topDown').css('display','block');
})
  • 绑定多个事件
$('.top-m .on').bind({
    mouseover:function(){
        $('.topDown').show();
    },
    mouseout:function(){
        $('topDown').hide();
    }
})

2.6 移除事件

unbind([type].fn)

$('li:eq(1)').bind({
    mouseover:function(){
        console.log('你的鼠标在第二个元素上面');
    },
    mouseout:function(){
        console.log('你的鼠标离开了第二个元素');
    }
});
$('li:eq(2)').bind('click',function(){
    $('li:eq(1)').unbind();
});

2.7 hover()方法

模拟鼠标悬停和离开事件
hover(enter,leave)

$('#box3').hover(function(){
    $(this).text('显示文字');
},function(){
    $(this).text('');
});

2.8 toggle()方法

  • 用于模拟鼠标连续click事件(该方法在1.8中被废弃,1.9被移除)
$('#box3').toggle(
    function(){
        $(this).css('background','red');},
    function(){
        $(this).css('background','yellow');},
    function(){
        $(this).css('background','green');}
);
  • 切换元素的可见状态
$('#box3').click(function(){
    $('ul').toggle(1000);
})

2.9 isNaN()

用于检查其参数是否是非数字

    console.log(isNaN(123))  //false
    console.log(isNaN('123'))  //false
    console.log(isNaN(5-2))  //false
    console.log(isNaN(2017/12/12))  //false
    console.log(isNaN('hello'))  //true
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,288评论 19 139
  • (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...
    凛0_0阅读 1,411评论 0 8
  • 这两天于欢的案子闹到沸沸扬扬,我也没有能力对法官所作出的裁决做出判断。这个案子中我对于欢的律师感到很钦佩,他竟然有...
    想即使天空阅读 179评论 0 0
  • 问题: 为什么我离不开这个带给我痛苦的经常批判? 回答: 批判带来痛苦,但是有时候它也带来喜悦,那就是问题之所在。...
    VimalaYoko阅读 446评论 0 0
  • 以此为题“心坊”,是希望在若干年以后,它能成为我的个人品牌。 今天洗澡时,突然领悟到人生的真谛,或许我们一辈子干不...
    一粒种子一棵树阅读 496评论 0 0