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 相关文章推荐
jQuery使用动态渲染表单功能完成ajax文件下载
Jan 15 Javascript
JavaScript的继承的封装介绍
Oct 15 Javascript
iframe里的页面禁止右键事件的方法
Jun 10 Javascript
jQuery控制TR显示隐藏的三种常用方法
Aug 21 Javascript
学JavaScript七大注意事项【必看】
May 04 Javascript
浅谈jquery拼接字符串效率比较高的方法
Feb 22 Javascript
JS实现提交表单前的数字及邮箱校检功能
Nov 13 Javascript
vue-router3.0版本中 router.push 不能刷新页面的问题
May 10 Javascript
解决vue项目打包后提示图片文件路径错误的问题
Jul 04 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
Sep 19 Javascript
关于layui表单中按钮自动提交的解决方法
Sep 09 Javascript
JavaScript数组排序小程序实现解析
Jan 13 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
PHP 字符串 小常识
2009/06/05 PHP
php中截取中文字符串的代码小结
2011/07/17 PHP
php使用PDO方法详解
2014/12/27 PHP
PHP的Yii框架的常用日志操作总结
2015/12/08 PHP
php PDO判断连接是否可用的实现方法
2017/04/03 PHP
Yii2汉字转拼音类的实例代码
2017/04/18 PHP
php取出数组单个值的方法
2018/03/12 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
使用prototype.js 的时候应该特别注意的几个问题.
2007/04/12 Javascript
JS 巧妙获取剪贴板数据 Excel数据的粘贴
2009/07/09 Javascript
Javascript 实现TreeView CheckBox全选效果
2010/01/11 Javascript
基于JavaScript 数据类型之Boolean类型分析介绍
2013/04/19 Javascript
JS检测图片大小的实例
2013/08/21 Javascript
js表格排序实例分析(支持int,float,date,string四种数据类型)
2015/05/06 Javascript
动态加载jQuery的方法
2015/06/16 Javascript
jQuery实现仿腾讯视频列表分页效果的方法
2015/08/07 Javascript
iscroll动态加载数据完美解决方法
2017/07/18 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
python使用自定义user-agent抓取网页的方法
2015/04/15 Python
window下eclipse安装python插件教程
2017/04/24 Python
Python安装图文教程 Pycharm安装教程
2018/03/27 Python
Python面向对象原理与基础语法详解
2020/01/02 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
详解CSS3中强大的filter(滤镜)属性
2017/06/29 HTML / CSS
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
有趣的广告词
2014/03/18 职场文书
党员承诺践诺书
2014/05/20 职场文书
消防安全宣传口号
2014/06/10 职场文书
2014年平安建设工作总结
2014/11/19 职场文书
思想政治表现评语
2015/01/04 职场文书
入伍通知书
2015/04/23 职场文书
经营目标责任书
2015/05/08 职场文书
初中数学教学反思范文
2016/02/17 职场文书
搭建zabbix监控以及邮件报警的超级详细教学
2022/07/15 Servers
JavaScript实现简单的音乐播放器
2022/08/14 Javascript