引入;<script type="text/javascript" src="../../js/jquery-1.11.0.js" ></script>
页面加载函数:
页面加载的JS实现与JQuery实现的区别:
JS实现是属性操作,JQuery实现是函数操作
前者多次加载会产生覆盖,而后者多次都调用
$(function(){
alert("123");
});
$(document).ready(function(){
alert("123");
});
通过选择器获取JQery对象
ID选择器:
var d = $("#id"); ---- 返回一个对象 ----- document.getElementById("id");
标签名选择器
var ds = $("标签名"); --- 返回数组 ----- document.getElementsByTagName("标签名");
类名选择器
ar ds = $(".类名"); ---- 返回数组 ------- document.getElementsByClassName("类名");
注意事项:
1、所有的 $ 符号都可以替换成 jQuery 这个函数名
2、JQuery对象也可以转成JS对象
语法:
var d = JQuery对象[0];
3、上述转换语法,不适用于数组
如果是数组,只是获取第一个元素
JQuery对象操作是将JS对象的属性操作函数化了
JQuery中的事件:
JS中:
对象.onxxx = function(){}
JQ中:
对象.xxx(function(){});
元素操作:
内容体操作:
JQuery ---- 对象.html() 对象.html("新值");
JS -------- 对象.innerHTML 对象.innerHTML = 新值;
标签属性操作:
JQuery ---- 对象.prop("属性名") 对象名.prop("属性名","属性值") /对象.attr("","");
由于 value 属性经常操作,因此JQuery单独封装了 val() 函数实现,
class 操作也封装了专门的函数实现addClass();
CSS 实现
$("#f2").prop("style","color:blue;");
$("#f2").css("color","green");
removeProp("键") ---- 移出属性
JS -------- 对象.属性名 对象.属性名 = 新值 /对象.setAttribute(k,v)
注意:
1、如果是一个JQuery 数组,调用prop函数,且prop函数是设置属性(没有获取),那么这时
JQuery会为数组的每一个元素都调用 prop函数,底层封装好了
2、但是如果是获取属性,只会获取第一个元素的属性
数组循环:
格式1:
JQ数组.each(function(index,ele){
index ---- 索引
ele ------ 当前元素
})
格式2:
$.each(JQ数组,function(index, ele){
index ---- 索引
ele ------ 元素
})
效果:针对于数组的每一个元素,都调用一次 function
优化:
如果不使用索引,那么function 可以不传参数,直接在方法中使用 this 代表当前元素
$.each(arr,function(){
alert(this)
});