JQuery知识点汇总
认识jquery
jQuery是javascript的类库,具有轻量级,完善的文档,丰富的插件支持,完善的Ajax功能,强大的选择器功能,出色的DOM操作封装,出色的浏览器兼容性,可靠的事件处理机制,隐式迭代和链式编程操作,免费开源的库
jQuery库包含以下功能:
HTML 元素选取 HTML 元素操作 CSS 操作 HTML 事件函数
JavaScript 特效和动画 HTML DOM 遍历和修改
AJAX Utilities
除此之外,Jquery还提供了大量的插件
引用jquery
jQuery 库是一个 JavaScript 文件,可以使用 HTML 的 script标签引用它:
<script src="jquery-1.10.2.min.js"></script>
jQuery 语法
jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作
基础语法:
$(selector).action()
美元符号定义 jQuery
选择符(selector)“查询"和"查找” HTML 元素
jQuery 的 action() 执行对元素的操作
实例:
$(this).hide() - 隐藏当前元素
$("p").hide() - 隐藏所有 <p> 元素
$("p.test").hide() - 隐藏所有 class="test" 的 <p> 元素
$("#test").hide() - 隐藏 id="test" 的元素
jQuery 选择器
jQuery 选择器对 HTML 元素组或单个元素进行操作
jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素
jQuery 中所有选择器都以美元符号开头:$()
元素选择器
选取页面中的元素
语法:
$("p")
实例:点击隐藏p元素
$(document).ready(function(){
$("button").click(function(){
$("p").hide();
})
})
#id选择器
#id选择器通过HTML元素的id属性选取指定的元素
页面中元素的 id 应该是唯一的,所以要在页面中选取唯一的元素需要通过 #id 选择器
语法:
$("#test")
实例:点击按钮后,有 id=“test” 属性的元素将被隐藏
$(document).ready(function(){
$("button").click(function(){
$("#test").hide();
})
})
.class 选择器
类选择器可以通过指定的 class 查找元素
语法:
$(".test")
实例:点击按钮后所有带有 class=“test” 属性的元素都隐藏
$(document).ready(function(){
$("button").click(function(){
$(".test").hide();
})
})
jQuery 事件
在 jQuery 中,大多数 DOM 事件都有一个等效的 jQuery 方法
页面中指定一个点击事件:
$("p").click();
事件函数:
$("p").click(function(){
// 动作触发后执行的代码!!
});
常用的 jQuery 事件方法
click()单击
click() 方法是当按钮点击事件被触发时会调用一个函数
实例:点击事件在某个p元素上触发时,隐藏当前的 p元素
$("p").click(function(){
$(this).hide();
});
dblclick()双击
当双击元素时,会发生 dblclick 事件
实例:
$("p").dblclick(function(){
$(this).hide();
});
mouseenter()
当鼠标指针穿过元素时,会发生 mouseenter 事件
实例:
$("#p1").mouseenter(function(){
alert('您的鼠标移到了 id="p1" 的元素上!');
});
mouseleave()
当鼠标指针离开元素时,会发生 mouseleave 事件
实例:
$("#p1").mouseleave(function(){
alert("再见,您的鼠标离开了该段落。");
});
mousedown()
当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件
实例:
$("#p1").mousedown(function(){
alert("鼠标在该段落上按下!");
});
mouseup()
当在元素上松开鼠标按钮时,会发生 mouseup 事件
实例:
$("#p1").mouseup(function(){
alert("鼠标在段落上松开。");
});
hover()
hover()方法用于模拟光标悬停事件
实例:
$("#p1").hover(
function(){
alert("你进入了 p1!");
},
function(){
alert("拜拜! 现在你离开了 p1!");
}
);
focus()
当元素获得焦点时,发生 focus 事件
实例:
$("input").focus(function(){
$(this).css("background-color","#cccccc");
});
blur()
当元素失去焦点时,发生 blur 事件
实例:
$("input").blur(function(){
$(this).css("background-color","#ffffff");
});
jQuery 效果
隐藏和显示
可以使用 hide() 和 show() 方法来隐藏和显示 HTML 元素
实例:
$("#hide").click(function(){
$("p").hide();
});
$("#show").click(function(){
$("p").show();
});
toggle()
可以使用 toggle() 方法来切换 hide() 和 show() 方法
实例:
$("button").click(function(){
$("p").toggle();
});
淡入淡出
fadeIn() 方法
用于淡入已隐藏的元素
实例:
$("button").click(function(){
$("#div1").fadeIn();
$("#div2").fadeIn("slow");
$("#div3").fadeIn(3000);
});
fadeOut() 方法
用于淡出可见元素
实例:
$("button").click(function(){
$("#div1").fadeOut();
$("#div2").fadeOut("slow");
$("#div3").fadeOut(3000);
});
fadeToggle() 方法
可以在 fadeIn() 与 fadeOut() 方法之间进行切换
实例:
$("button").click(function(){
$("#div1").fadeToggle();
$("#div2").fadeToggle("slow");
$("#div3").fadeToggle(3000);
});
fadeTo() 方法
允许渐变为给定的不透明度
实例:
$("button").click(function(){
$("#div1").fadeTo("slow",0.15);
$("#div2").fadeTo("slow",0.4);
$("#div3").fadeTo("slow",0.7);
});
滑动
jQuery 滑动方法
滑动方法:
slideDown(),slideUp(),slideToggle()
slideDown() 方法
用于向下滑动元素
实例:
$("#flip").click(function(){
$("#panel").slideDown();
});
slideUp() 方法
用于向上滑动元素
实例:
$("#flip").click(function(){
$("#panel").slideUp();
});
slideToggle() 方法
可以在 slideDown() 与 slideUp() 方法之间进行切换
实例:
$("#flip").click(function(){
$("#panel").slideToggle();
});
动画
jQuery可以创建自定义动画
animate() 方法
实例:
$("button").click(function(){
$("div").animate({left:'250px'});
});
操作多个属性
实例:
$("button").click(function(){
$("div").animate({
left:'250px',
opacity:'0.5',
height:'150px',
width:'150px'
});
});
使用相对值
在属性前面加上+=或者-=
实例:
$("button").click(function(){
$("div").animate({
left:'250px',
height:'+=150px',
width:'+=150px'
});
});
使用预定义的值
让动画显示隐藏或者其他效果
实例:
$("button").click(function(){
$("div").animate({
height:'toggle'
});
});
使用队列功能
编写多个动画是可以让他们按照顺序执行
实例:
$("button").click(function(){
var div=$("div");
div.animate({height:'300px',opacity:'0.4'},"slow");
div.animate({width:'300px',opacity:'0.8'},"slow");
div.animate({height:'100px',opacity:'0.4'},"slow");
div.animate({width:'100px',opacity:'0.8'},"slow");
});
例子:把 div元素往右边移动了 100 像素,然后增加文本的字号
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
div
{
background:#98bf21;
height:100px;
width:200px;
position:absolute;
}
</style>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("button").click(function(){
var div=$("div");
div.animate({left:'100px'},"slow");
div.animate({fontSize:'3em'},"slow");
});
});
</script>
</head>
<body>
<button>开始动画</button>
<div>HELLO</div>
</body>
</html>