CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法


Posted in Javascript onMay 12, 2015

本文实例讲述了CSS+JS实现点击文字弹出定时自动关闭DIV层菜单的方法。分享给大家供大家参考。具体分析如下:

这里用CSS+JS实现点击文字后动画展开一个DIV层菜单,到期会自动关闭,是CSS结合JS实现的效果。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>CSS+JS弹出DIV层</title>
<script type="text/javascript">
var w = 0;
var h = 0;
var mout;
function emotion(){
var oMenu = document.getElementById("menu");
if(w <= 50){
oMenu.style.display = "block";
fnLarge();
}
else{
fnSmall();
}
}
function fnLarge(){
var oMenu = document.getElementById("menu");
if(w < 200){
w += 50;
h += 25;
oMenu.style.width = w+"px";
oMenu.style.height = h+"px";
window.setTimeout("fnLarge()",10);
}
}
function fnSmall(){
var oMenu = document.getElementById("menu");
if(w > 0){
w -= 50;
h -= 25;
oMenu.style.width = w+"px";
oMenu.style.height = h+"px";
window.setTimeout("fnSmall()",5);
}
else{
oMenu.style.display = "none";
}
}
</script>
<style type="text/css">
body{
text-align: center;
}
p{
cursor: pointer;
margin: 0;
padding: 0;
font-size: 24px;
display: inline;
}
div a:link, div a:visited{
color: #666;
text-decoration: none;
}
div a:hover{
color: #FF6600;
text-decoration: underline;
}
div{
border: 2px solid #666;
background: #fff;
margin: 5px auto;
overflow: hidden;
display: none;
padding: 5px 10px;
}
ul,li{
margin: 0;
padding: 0;
}
li{
list-style: none;
width:70px;
}
li.title{
font-weight: bold;
}
</style>
</head>
<body>
<p onclick="emotion();">点击这行文字试试!</p>
<div id="menu" 
onmouseout="javascript:mout=setTimeout('fnSmall()',2111);" 
onMouseOver="javascript:clearTimeout(mout);">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="80" valign="top" align="left">
<ul>
<li class="title">ASP</li>
<li><a href="#" onclick="fnSmall();">新闻</a></li>
<li><a href="#" onclick="fnSmall();">论坛</a></li>
<li><a href="#" onclick="fnSmall();">CMS</a></li>
<li></li>
</ul></td>
<td width="80" valign="top" align="left">
<ul>
<li class="title">PHP</li>
<li><a href="#" onclick="fnSmall();">文章</a></li>
<li><a href="#" onclick="fnSmall();">聊天</a></li>
<li><a href="#" onclick="fnSmall();">插件</a></li>
<li><a href="#" onclick="fnSmall();">企业</a></li>
</ul>
</td>
<td width="80" valign="top" align="left">
<ul>
<li class="title">JSP</li>
<li><a href="#" onclick="fnSmall();">AJAX</a></li>
<li><a href="#" onclick="fnSmall();">JQUERY</a></li>
<li><a href="#" onclick="fnSmall();">MYSQL</a></li>
<li><a href="#" onclick="fnSmall();">JAVA</a></li>
</ul>
</td>
</tr>
</table>
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
php上传图片并给图片打上透明水印的代码
Jun 07 Javascript
JS替换字符串中字符即替换全部而不是第一个
Jun 04 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
Jan 28 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
May 05 Javascript
angular.js 路由及页面传参示例
Feb 24 Javascript
layui问题之模拟select点击事件的实例讲解
Aug 15 Javascript
jQuery实现的鼠标拖动浮层功能示例【拖动div等任何标签】
Dec 29 jQuery
Vuex持久化插件(vuex-persistedstate)解决刷新数据消失的问题
Apr 16 Javascript
优雅地使用loading(推荐)
Apr 20 Javascript
微信小程序监听用户登录事件的实现方法
Nov 11 Javascript
vue使用swiper实现中间大两边小的轮播图效果
Nov 24 Javascript
通过实例解析json与jsonp原理及使用方法
Sep 27 Javascript
JavaScript实现DIV层拖动及动态增加新层的方法
May 12 #Javascript
js实现带按钮的上下滚动效果
May 12 #Javascript
js验证上传图片的方法
May 12 #Javascript
js中setTimeout()与clearTimeout()用法实例浅析
May 12 #Javascript
js实现一个链接打开两个链接地址的方法
May 12 #Javascript
js实现鼠标经过表格行变色的方法
May 12 #Javascript
js比较日期大小的方法
May 12 #Javascript
You might like
福利彩票幸运号码自动生成器
2006/10/09 PHP
解析PHP正则提取或替换img标记属性
2013/06/26 PHP
php中url函数介绍及使用示例
2014/02/13 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
关于jQuery中.attr()和.prop()的问题探讨
2013/09/06 Javascript
JS+CSS实现的拖动分页效果实例
2015/05/11 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
js脚本分页代码分享(7种样式)
2015/08/19 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
hammer.js实现图片手势放大效果
2017/08/29 Javascript
详解VueRouter进阶之导航钩子和路由元信息
2017/09/13 Javascript
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
[52:14]VG vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python smtplib模块发送SSL/TLS安全邮件实例
2015/04/08 Python
利用Python的Django框架中的ORM建立查询API
2015/04/20 Python
python笔记:mysql、redis操作方法
2017/06/28 Python
python 字典 按key值大小 倒序取值的实例
2018/07/06 Python
Python设计模式之工厂方法模式实例详解
2019/01/18 Python
详解python深浅拷贝区别
2019/06/24 Python
Python pip使用超时问题解决方案
2020/08/03 Python
python 可视化库PyG2Plot的使用
2021/01/21 Python
python 数据类型强制转换的总结
2021/01/25 Python
纯CSS3绘制打火机动画火焰效果
2016/07/18 HTML / CSS
法国美发器材和产品购物网站:Beauty Coiffure
2016/12/05 全球购物
德国EGOIST网店:销售畅销的设计师品牌
2017/04/18 全球购物
婚前协议书范本
2014/04/15 职场文书
家长学校培训材料
2014/08/20 职场文书
公司授权委托书范文
2014/09/21 职场文书
请客吃饭开场白
2015/06/01 职场文书
浅谈Python基础之列表那些事儿
2021/05/11 Python
基于tensorflow权重文件的解读
2021/05/26 Python
python unittest单元测试的步骤分析
2021/08/02 Python
Appium中scroll和drag_and_drop根据元素位置滑动
2022/02/15 Python
Python基本的内置数据类型及使用方法
2022/04/13 Python