① JQuery 是一个 JS 框架, 用于简化 JS 的开发.
② JQuery 使用前需要导入
③ JQuery 与 JS 对象互不通用, 但可相互转化.
jq 转为 js : jq对象[索引] 或者 jq对象.get(索引)
(类似于数组)
js 转为 jq : $(js对象)
<input type="button" value="click me!" id="b1">
$("#b1/*←-此处可使用选择器*/").click(function() {alert("abc");})//JQuery 中绑定事件的方法
注:
JS 的 window.onload 只能定义一次, 若后面多次定义, 则会覆盖前面的语句仅执行最后面定义的语句;
而 JQuery 的 ${function}
可以定义多次
JQuery 设置 HTML 页面显示的文本的 css 样式:
$(function (){ $("#div1").css("background-color","red"); });
$("html标签名")
获得所有匹配标签名称的元素
$(“div”)
$("#id属性值")
获得与指定id属性值匹配的元素
$("#b1")
$(".class的属性值")
获得与指定的class属性值匹配的元素
$("选择器1,选择器2....")
获取多个选择器选中的所有元素,
注: 多个元素可以是不同种类, 只需逗号隔开就好, 例如:
$("span,#two")
$("A B ") 选择A元素内部的所有B元素 (在 A 的儿子、孙子、曾孙子…中寻找 B)
$(“A > B”) 选择A元素内部的所有B子元素 (在 A 的儿子中寻找 B)
$(“A[属性名]”) 包含指定属性的选择器
$(“A[属性名=‘值’]”) 包含指定属性等于指定值的选择器
$(“A[属性名=‘值’][]…”) 包含多个属性条件的选择器
:first
获得选择元素中第一个元素
:last
获得选择的元素中的最后一个元素
$("div:first")
:not(selector)
不包括指定内容的元素
$(“div:not(.one)”)
:even
选择偶数项
:odd
选择奇数项
:eq(index)
等于索引的元素
:gt(index)
大于索引的元素
:lt(index)
小于索引的元素
$(“div:lt(3)”)
:header
获得标题(h1~h6 标签标注的)元素
$(":header")
jQuery 对象的 val()
方法改变表单内可用 < input > 元素的值 (val方法与JS对象的value属性类似)
$("#b1").click(function (){ $("input[type='text']:enabled").val("aaa"); });
筛选出可用的 (:enable) 输入框 (类型为text的input标签) , 若要筛选不可用的项, 使用 disabled
alert($("input[type='checkbox']:checked").length);
alert($("#job>option:selected").length);
var val=$("选择器").val();
var html=$("选择器").html();
var html=$("选择器").text();
attr():
获取 / 设置元素 (的固有) 属性removeAttr():
删除用 attr 设置的属性
prop():
获取 / 设置元素 (的自定义) 属性removeProp():
删除用 prop 设置的属性
例:
var name = $("#bj").attr("name"); $("#bj").attr("discription","didu"); 设置description属性值为"didu" $("#bj").removeAttr("description"); var checked = $("#hobby").prop("checked");
① addClass():
快速添加 class 属性值
$("#one").prop("class","second"); =============上下二者等效============= $("#one").addClass("second");
② removeClass():
删除 class 属性值
③ toggleClass():
切换 class 属性值
在 ① addClass():
和 ② removeClass():
之间依次切换
如果已经设置属性, 则删除该属性; 若未设置则设置该属性.
append():
追加到末尾将B放到A的末尾 $("#A").append($("#B"));
prepend():
追加到开头将B放到A的开头 $("#A").prepend($("#B"));
after():
插入到后面将B插入A的后面 $("#A").after($("#B"));
before():
插入到前面将B插入A的前面 $("#A").before($("#B"));
注:
① 上述方法中的前后对象均为同级兄弟关系
② 注意代码中前后变量的顺序, 与文字顺序相反
remove():
删除指定元素$("选择器或元素名").remove();
empty():
清空指定元素内包含的所有子元素 (但不删除本元素!)$("选择器或元素名").empty();
$("选择器").click(function(){ 事件内容 });
注: 除 click 之外的其他事件:
$("选择器").on("事件名称",回调函数) $("#btn").on("click",function (){ alert("on:我被点击了!"); }); ======================================================= $("选择器").off("事件名称")
$("选择器").toggle(function(){事件1},function(){事件2}...);
注:
① 可以添加多个事件依次切换
② 使用 toggle
切换事件时需要导入 jQuery-migrate.js
show([speed],[easing],[fn])
: 显示
参数:
speed: 动画的速度 (slow, normal, fast) 或表示动画时长的毫秒值 (如: 1000) easing: 用来指定切换效果, 默认是 "swing" 表示慢入慢出, 可用参数 "linear" 表示匀速 fn: 在动画完成时执行函数, 每个元素执行一次.
hide(所传参数同上)
: 隐藏
linear(所传参数同上)
: 显示和隐藏切换
slideDown(所传参数同上)
: 显示
slideUp(所传参数同上)
: 隐藏
slideToggle(所传参数同上)
: 显示和隐藏切换
fadeIn(所传参数同上)
: 显示
fadeOut(所传参数同上)
: 隐藏
fadeToggle(所传参数同上)
: 显示和隐藏切换
for (遍历的对象) of (父级容器){ 循环体内容; } ======================================== 例: for(li of citys){...} 循环遍历id为city的表格中的所有li元素
注: 类似于java中的增强for循环
(容器).each(function(){...}) ======================================== 例: 将city表中所有元素弹出对话框显示 city.each(function(){ alert(this.innerHTML); })