-
4. 事件冒泡与事件委托(面试重点)
-
最近有很多粉丝小伙伴,说要一些基础教程,必须安排的明明白白
-
后续做一个一整个JS教程(知识点 + 经典案例)
-
新朋友可以关注一波(能三连是最好的了),本博主高产似奶牛
-
此事件使用频率很高,务必掌握
-
文档加载完成之后会做的事情
1.1 ready()
- ready(): 表示文档结构已经加载完成(不包含图片等非文字媒体文件)
// 写法一
$(document).ready(function(){
//do something
})
1.2 onload()
-
onload(): 包含图片等文件在内的所有元素都加载完成。
-
ready() 在onload()之前加载
// 写法二
window.onload = function(){
//do something
}
HTML结构如下(记得先复制这个):
鼠标事件
mousemove: 精交互
mousemove
鼠标双击事件
<button
id=“dbBtn”
οndblclick=“dbFn()”
οnclick=“clickFn()”>双击事件
鼠标悬浮事件
悬浮显示div
原有文字
键盘事件
2.1 鼠标悬浮事件
let btn= $my(“btn”);
let div2 = $my(“div2”);
// 鼠标悬浮事件
btn.onmouseover = function(){
div2.style.display = “block”;
}
// 鼠标离开事件
btn.onmouseout = function(){
div2.style.display = “none”;
}
此处的 $my() 已经进行过封装,这样很方便,代码如下:
function $my(id){
return document.getElementById(id);
}
2.2 点击事件
let timeId = null;
// 单击事件
function clickFn(){
clearTimeout(timeId);
timeId = window.setTimeout(function(){
console.log(“单击事件”);
}, 500)
}
// 双击事件
function dbFn(){
clearTimeout(timeId)
console.log(“双击事件”)
}
2.3 常用的回车事件
// 键盘事件
function keyFn(event){
console.dir(event);
}
// 监听窗口回车事件
document.onkeyup = function(event){
console.log(event.keyCode);
if(event.keyCode === 13){
alert(“回车事件”)
}
}
3.1 获取浏览器类型
let userAgent= navigator.userAgent;
console.log(userAgent);
if (userAgent.indexOf(“Opera”) > -1) { // 判断是否是Opera浏览器
console.log(“Opera”);
};
if (userAgent.indexOf(“Firefox”) > -1) { // 判断是否是Firefox浏览器
console.log(“Firefox”);
}
if (userAgent.indexOf(“Chrome”) > -1) { // 判断是否是Chrome浏览器
console.log(“Chrome”);
}
if (userAgent.indexOf(“Safari”) > -1) { // 判断是否是Safari浏览器
console.log(“Safari”);
}
if (userAgent.indexOf(“compatible”) > -1 && userAgent.indexOf(“MSIE”) > -1) {
console.log(“IE”); // 判断是否是IE浏览器
};
3.2 判断手机机型(移动端解决兼容问题常用)
// 检测机型 安卓还是苹果
function getAdr(){
//获取机型信息
let type = navigator.userAgent;
let isAndroid = type.indexOf(“Android”) > -1 ||
type.indexOf(“Adr”) > -1;
return isAndroid;
}
console.log(getAdr()); // true为安卓 false为苹果
HTML文件代码如下(记得先复制这个)
事件冒泡
div的文本
我是段落标签
事件委托
- 1
- 2
- 3