解决jquery的.animate()函数在IE6下的问题


Posted in Javascript onDecember 03, 2010

在项目里面实现左的菜单折叠显示的效果,这个在软件界面里是常见的(本来到网上copy一段代码也就了事了,估计写的比我都好,但学习嘛,就要有学习的精神^^!),
我是用.animate()去实现隐藏展开的,代码如下:

<!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>无标题文档</title> 
<style> 
<!-- 
.left { 
width:100px; 
height:500px; 
background:#060; 
float:left; 
} 
#butid { 
width:10px; 
height:500px; 
background:#C00; 
float: left; 
} 
.content { 
width:500px; 
height:500px; 
background:#000; 
float:left; 
color: #FFF 
} 
--> 
</style> 
</head> 
<body> 
<script type="text/javascript" src="thirdparty/jquery/jquery.js"></script> 
<script type="text/javascript"> 
$(function(){ 
var i = 1;//设置状态判断 
$('#butid').click(function(){ 
if(i == 1){ 
$('.content').animate({left: '-=100px',width: '600px'}, "slow"); 
$('.left').animate({width: '0px'}, "slow"); 
i = 2; 
}else{ 
$('.content').animate({left: '0px',width: '500px'}, "slow"); 
$('.left').animate({width: '100px'}, "slow");//fadeOut() 
i = 1; 
} 
}); 
}); 
</script> 
<div class="left">123</div> 
<div id="butid"></div> 
<div class="content">123</div> 
</body> 
</html>

如果这样子的话,在FF,IE7-8,chrome下执行是正常的。可是IE6下无法隐藏left,原因是因为ie6默认内容高宽度超出时,DIV会自动撑开。所以只要给.left{}加个overflow:hidden,问题也就解决~~
PS:本来早上是写个函数把.left里面的内容隐藏掉的,在写博文的时候突然想通了这个原理,还以为是.animate()在IE6下有BUG
Javascript 相关文章推荐
日期函数扩展类Ver0.1.1
Sep 07 Javascript
用javascript实现画板的代码
Sep 05 Javascript
JavaScript学习笔记(十)
Jan 17 Javascript
使用JS进行目录上传(相当于批量上传)
Dec 05 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
Sep 29 Javascript
javascript高级程序设计第二版第十二章事件要点总结(常用的跨浏览器检测方法)
Aug 22 Javascript
js this函数调用无需再次抓获id,name或标签名
Mar 03 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
May 28 Javascript
JQuery手速测试小游戏实现思路详解
Sep 20 Javascript
elementUI中Table表格问题的解决方法
Dec 04 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
Jul 01 Javascript
vue + el-form 实现的多层循环表单验证
Nov 25 Vue.js
基于jQuery的左右滚动实现代码
Dec 03 #Javascript
基于jquery的finkyUI插件与Ajax实现页面数据加载功能
Dec 03 #Javascript
Web开发者必备的12款超赞jQuery插件
Dec 03 #Javascript
jQuery学习笔记[1] jQuery中的DOM操作
Dec 03 #Javascript
浅析jQuery的链式调用之each函数
Dec 03 #Javascript
jQuery的链式调用浅析
Dec 03 #Javascript
加速IE的Javascript document输出的方法
Dec 02 #Javascript
You might like
php 表单数据的获取代码
2009/03/10 PHP
php include类文件超时问题处理
2015/02/06 PHP
PHP自定义函数实现数组比较功能示例
2017/10/19 PHP
php闭包中使用use声明变量的作用域实例分析
2018/08/09 PHP
jquery 入门教程 [翻译] 推荐
2009/08/17 Javascript
COM中获取JavaScript数组大小的代码
2009/11/22 Javascript
javascript中判断一个值是否在数组中并没有直接使用
2012/12/17 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
js获取下拉列表的值和元素个数示例
2014/05/07 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
2015/12/29 Javascript
js表单登陆验证示例
2016/10/19 Javascript
jquery 仿锚点跳转到页面指定位置的实例
2017/02/14 Javascript
js实现自动图片轮播代码
2017/03/22 Javascript
微信小程序 页面跳转如何实现传值
2017/04/05 Javascript
JavaScript数组去重的多种方法(四种)
2017/09/19 Javascript
element ui里dialog关闭后清除验证条件方法
2018/02/26 Javascript
JS高级技巧(简洁版)
2018/07/29 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
微信小程序绘制图片发送朋友圈
2019/07/25 Javascript
js实现简单点赞操作
2020/03/17 Javascript
[01:16:13]DOTA2-DPC中国联赛 正赛 SAG vs Dragon BO3 第一场 2月22日
2021/03/11 DOTA
Python 连连看连接算法
2008/11/22 Python
在Linux中通过Python脚本访问mdb数据库的方法
2015/05/06 Python
Python中.join()和os.path.join()两个函数的用法详解
2018/06/11 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
python3 小数位的四舍五入(用两种方法解决round 遇5不进)
2019/04/11 Python
python将三维数组展开成二维数组的实现
2019/11/30 Python
python怎么对数字进行过滤
2020/07/05 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
韩国女装NO.1网店:STYLENANDA
2016/09/16 全球购物
怎样声明接口
2014/09/19 面试题
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
学年自我鉴定范文
2013/10/01 职场文书
大学生职业生涯规划方案
2014/01/03 职场文书
超市创意活动方案
2014/08/15 职场文书
2015年业务工作总结范文
2015/04/10 职场文书