JS延时器提示框的应用实例代码解析


Posted in Javascript onApril 27, 2016

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>延时显示提示框</title>
<style>
#div1 {
float: left;
width: 60px;
height: 60px;
background-color: aqua;
}
#div2 {
position: relative;
float: left;
margin: 0 10px;
width: 200px;
height: 200px;
background-color: #cccccc;
display: none;
}
</style>
<script>
window.onload = function () {
var oDiv1 = document.getElementById('div1');
var oDiv2 = document.getElementById('div2');
var timer = null;
// oDiv1.onmouseover = function () {
// clearTimeout(timer);
// oDiv2.style.display = 'block'; //鼠标移入div1时显示div2
// };
//
// oDiv1.onmouseout = function () {
// timer = setTimeout(function () {
// oDiv2.style.display = 'none'; //鼠标移除div1时隐藏div2
// }, 500); //为了从div1移入div2,所以移出div1时div2隐藏应该有一个延时设置
// };
//
// oDiv2.onmouseover = function () {
// clearTimeout(timer); //清除延时器设置,当鼠标移入div2时,div2应当显示
// };
//
// oDiv2.onmouseout = function () {
// timer = setTimeout(function () {
// oDiv2.style.display = 'none'; //当鼠标移出div2时,div2应当隐藏
// }, 500); //当鼠标移出div2并移入div1时,div2会闪烁一下再显示,设置一个延时,清除闪烁的效果;
// // 但是设置延时器之后,鼠标移入div1时,div2却隐藏了,原因是setTimeout,
// // 应当清除延时器,在oDiv1.onmouseover事件中添加,清除延时器的代码
// };
// 由于这四个事件中代码两两对应地相同或相似,可以做如下简化处理:
oDiv1.onmouseover = oDiv2.onmouseover = function () {
clearTimeout(timer);
oDiv2.style.display = 'block';
/* 鼠标移入div1时显示div2,虽然oDiv2.onmouseover事件中没有写oDiv2.style.display = 'block';
但是实际上oDiv2是'block'状态,多写一句代码没有实质性影响*/
};
oDiv1.onmouseout = oDiv2.onmouseout = function () {
timer = setTimeout(function () {
oDiv2.style.display = 'none'; //鼠标移除div1时隐藏div2
}, 500); //为了从div1移入div2,所以移出div1时div2隐藏应该有一个延时设置
};
// 简化后的代码执行结果跟前面的代码效果完全一致.
}
</script>
</head>
<body>
<h2>延时提示框</h2>
<div id="div1"></div>
<div id="div2"></div>
</body>
</html>

延时提示框编写时需要注意的点都记录在注释当中,逐个对照注意一下,这个功能看过视频教程之后实现起来比较顺畅,原因是在编写代码之前对所需功能做了一个列表按照列表一一实现,出现问题再进行相应的调整比上来直接写代码强多了。

Javascript 相关文章推荐
JavaScript入门教程(12) js对象化编程
Jan 31 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
Jan 11 Javascript
jquery Mobile入门—多页面切换示例学习
Jan 08 Javascript
jquery修改属性值实例代码(设置属性值)
Jan 06 Javascript
js定时调用方法成功后并停止调用示例
Apr 08 Javascript
javascript获得当前的信息的一些常用命令
Feb 25 Javascript
jquery mobile移动端幻灯片滑动切换效果
Apr 15 Javascript
Three.js获取鼠标点击的三维坐标示例代码
Mar 24 Javascript
underscore之Collections_动力节点Java学院整理
Jul 10 Javascript
JS+CSS3实现的简易钟表效果示例
Apr 13 Javascript
Angular6使用forRoot() 注册单一实例服务问题
Aug 27 Javascript
详解JS WebSocket断开原因和心跳机制
May 07 Javascript
基于JS实现Android,iOS一个手势动画效果
Apr 27 #Javascript
requireJS使用指南
Apr 27 #Javascript
vue,angular,avalon这三种MVVM框架优缺点
Apr 27 #Javascript
浏览器兼容的JS写法总结
Apr 27 #Javascript
Vue.js基础知识汇总
Apr 27 #Javascript
JS onkeypress兼容性写法详解
Apr 27 #Javascript
使用vue.js开发时一些注意事项
Apr 27 #Javascript
You might like
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
C#静态方法与非静态方法实例分析
2014/09/22 PHP
php实现图片转换成ASCII码的方法
2015/04/03 PHP
新浪的图片新闻效果
2007/01/13 Javascript
javascript 三种方法实现获得和设置以及移除元素属性
2013/03/20 Javascript
jquery Tab效果和动态加载的简单实例
2013/12/11 Javascript
jsPDF导出pdf示例
2014/05/02 Javascript
JQuery 给元素绑定click事件多次执行的解决方法
2014/09/09 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
highcharts 在angular中的使用示例代码
2017/09/20 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
2019/05/07 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
2019/08/03 Javascript
json_decode 索引为数字时自动排序问题解决方法
2020/03/28 Javascript
JS实现简单移动端鼠标拖拽
2020/07/23 Javascript
[42:32]Secret vs Optic 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python命名空间详解
2014/08/18 Python
关于Python正则表达式 findall函数问题详解
2018/03/22 Python
python小程序之4名牌手洗牌发牌问题解析
2020/05/15 Python
python selenium xpath定位操作
2020/09/01 Python
Python json解析库jsonpath原理及使用示例
2020/11/25 Python
日本高端护肤品牌:Tatcha
2016/08/29 全球购物
林清轩官方网站:山茶花润肤油开创者
2016/10/26 全球购物
澳大利亚在线购买儿童玩具:Toy Universe
2017/12/28 全球购物
求高于平均分的学生学号及成绩
2016/09/01 面试题
Ruby如何创建一个线程
2013/03/10 面试题
创意活动策划书
2014/01/15 职场文书
后勤主管岗位职责
2014/03/01 职场文书
《桂花雨》教学反思
2014/04/12 职场文书
教师作风整顿个人剖析材料
2014/10/10 职场文书
六查六看个人剖析材料
2014/10/14 职场文书
婚礼答谢词
2015/01/04 职场文书
sql查询结果列拼接成逗号分隔的字符串方法
2021/05/25 SQL Server
python for循环赋值问题
2021/06/03 Python
python中数组和列表的简单实例
2022/03/25 Python