jQuery加载

为什么JQuery写法弹出的速度快

比JS原生写法先弹出,由于window.onload是把页面元素加载、渲染完才弹出,而ready()是把所有页面的节点加载完之后就弹出了,不用等渲染了

代码:

jQuery加载 
 
// alert($);//弹出function (a,b){return new n.fn.init(a,b)}表示JQuery已经引进来了,这是它的一个构造函数
//原生JS写法
window.onload = function(){
var oDiv = document.getElementById('div');
alert(oDiv.innerHTML);//这是一个div元素
}
//jQuery的完整写法
//比上面JS写法先弹出,由于window.onload是把页面元素加载、渲染完才弹出,而ready()是把所有页面的节点加载完之后就弹出了,不用等渲染了
/*$(document).ready(function(){
var $div = $('#div');
alert('jQuery:' + $div.html());//jQuery:这是一个div元素
})*/
$(function () {
var $div = $('#div');
alert($div.html() + '简写');//这是一个div元素简写
})



这是一个div元素



jquery选择器

jquery选择器可以快速地选择元素,选择规则和css样式相同,使用length属性判断能否选择成功。

$(document) //选择整个文档对象

$('li') //选择所有的li元素

$('#myId') //选择id为myId的网页元素

$('.myClass') // 选择class为myClass的元素

$('input[name=first]') // 选择name属性等于first的input元素

$('#ul1 li span') //选择id为为ul1元素下的所有li下的span元素

对选择集进行修饰过滤(相似CSS伪类)

$('#ul1 li:first') //选择id为ul1元素下的第一个li

$('#ul1 li:odd') //选择id为ul1元素下的li的奇数行

$('#ul1 li:eq(2)') //选择id为ul1元素下的第3个li

$('#ul1 li:gt(2)') // 选择id为ul1元素下的前三个之后的li

$('#myForm :input') // 选择表单中的input元素

$('div:visible') //选择可见的div元素

对选择集进行函数过滤

$('div').has('p'); // 选择包含p元素的div元素

$('div').not('.myClass'); //选择class不等于myClass的div元素

$('div').filter('.myClass'); //选择class等于myClass的div元素? ? ? ? 过滤filter

$('div').first(); //选择第1个div元素

$('div').eq(5); //选择第6个div元素

代码

jQuery选择器 
 
#div1{
color: red;
}
.box{
color: green;
}
.list li{
margin-bottom: 10px;
}
$(function () {
$('#div1').css({color:'pink'});
$('.box').css({fontSize:'30px'});
$('.list li').css({
background:'skyblue',
color:'#fff',
fontSize:'20px',
marginBottom: '10px'
});
})



这是一个div元素



这是第二个div元素


选择集转移

$('div').prev('p'); //选择div元素前面的第一个p元素---同级的上一个元素

$('div').prevAll('p'); //选择div元素前面所有的p元素---同级的上面所有的元素

$('div').next('p'); //选择div元素后面的第一个p元素---同级的下一个元素

$('div').nextAll('p'); //选择div元素后面所有的p元素---同级的下面所有的元素

$('div').closest('form'); //选择离div最近的那个form父元素

$('div').parent(); //选择div的父元素

$('div').children(); //选择div的所有子元素

$('div').siblings(); //选择div的同级元素

$('div').find('.myClass'); //选择div内的class等于myClass--选孩子的

代码

选择集转移

$(function () {
// $('#div1').next().css({color:'red'});//修改div元素后面的第一个p元素样式
$('#div1').nextAll('p').css({color:'red'});/*修改div元素后面所有的p元素样式*/
/*选兄弟的*/
//prev()前面的
//prevAll()前面所有的
// $('#span01').parent().css({
// width:'100px',
// height:'100px',
// background:'gold'
// });//选择父亲元素
$('#span01').closest('div').css({
width:'100px',
height:'100px',
background:'gold'
});//选择离他最近的祖先元素
// $('.list li')//选择完.list li不能返回父元素
// $('.list li')与$('.list').children()的区别:
// 原始的选择集不一样
// $('.list li')不能通过end()回到父级
// $('.list').children()可以通过end()回到父级
$('.list').children().css({
height:'30px',
background:'gold',
marginBottom:'10px',
}).end().css({
background:'orange'
})
//eq(2)是选择索引等于2的第三个li,siblings()表示除第三个之外的其它兄弟li
$('.list2 li:eq(2)').css({
background:'yellow'
}).siblings().css({
background:'skyblue'});
//find()是选择div内的class等于link1的元素
$('#div2').find('.link1').css({color:'red'});
})

这是一个div元素



这是第二个div元素



这是一个p元素