冷门问题
1、flash和js通过类ExternalInterface进行交互。
ExternalInterface有两个方法call和addCallback:
1、ExternalInterface.addCallback("在js里可调用的flash方法名",flash内方法) //在js里调用flash里的方法
2、ExternalInterface.call("js方法",传给js的参数) //在flash里调用js里的方法
2、alt和title同时设置的时候,alt作为图片的替代文字出现,title是图片的解释文字
3、javascript系统方法
eval:返回字符串表达式中的值
unEscape:返回字符串ASCI码
escape:返回字符的编码
parseFloat:返回实数
4、常见事件:
1. 点击事件:
1. onclick:单击事件
2. ondblclick:双击事件
2. 焦点事件
1. onblur:失去焦点
2. onfocus:元素获得焦点。
3. 加载事件:
1. onload:一张页面或一幅图像完成加载。
4. 鼠标事件:
1. onmousedown 鼠标按钮被按下。
2. onmouseup 鼠标按键被松开。
3. onmousemove 鼠标被移动。
4. onmouseover 鼠标移到某元素之上。
5. onmouseout 鼠标从某元素移开。
5. 键盘事件:
1. onkeydown 某个键盘按键被按下。
2. onkeyup 某个键盘按键被松开。
3. onkeypress 某个键盘按键被按下并松开。
6. 选择和改变
1. onchange 域的内容被改变。
2. onselect 文本被选中。
7. 表单事件:
1. onsubmit 确认按钮被点击。
2. onreset 重置按钮被点击。
5、JavaScript中 call和apply
相同点:两个方法产生的 作用是完全一样的
不同点:方法传递的参数不同
call, apply方法它们除了第一个参数,即执行时上下文对象相同外,call方法的其它参数将依次传递给借用的方法作参数,而apply就两个参数,第二个参数为一个数组传递。
xxx.call(this, 参数1,参数2,参数3,。。。,参数n)
xxx.apply(this,[参数1,参数2,参数3,。。。,参数n])
6、浏览器内核
- IE:Trident内核
- chrome:WebKit内核
- Safari:webkit内核
- 搜狗浏览器:双核的,既有Trident内核也有 WebKit内核
- Firefox:Gecko内核
7、取页面内的宽高
alert($(window).height()); //浏览器当前窗口可视区域高度 alert($(document).height()); //浏览器当前窗口文档的高度 alert($(document.body).height());//浏览器当前窗口文档body的高度 alert($(document.body).outerHeight(true));//浏览器当前窗口文档body的总高度 包括border padding margin alert($(window).width()); //浏览器当前窗口可视区域宽度 alert($(document).width());//浏览器当前窗口文档对象宽度 alert($(document.body).width());//浏览器当前窗口文档body的高度 alert($(document.body).outerWidth(true));//浏览器当前窗口文档body的总宽度 包括border padding margin
8、布尔类型里只有这几参数个返回false,其它都为true
- Boolean(undefined) // false
- Boolean(null) // false
- Boolean(0) // false
- Boolean(NaN) // false
- Boolean('') // false
9、
'use strict'是严格模式
严格模式下禁止this关键字指向全局对象。
此时this为undefined。
10、接口返回状态401而不是接口返回的result是401,如何拿到code并做判断处理?
error => { // 响应错误处理
if (error.data.result === 500) {
// let originalRequest = error.config
Toast('系统发生错误,请联系客服')
return 'error'
// return instance.request(originalRequest);//例如再重复请求一次
} else if (error.response.status === 401) {
router.push('/login')
} else {
Toast('加载失败')
}
}