解決jquery的.animate()函數(shù)在IE6下的問題
更新時間:2010年12月03日 20:44:57 作者:
最近剛在項目里面花心思捉摸JQ,所以有些心得也及時放上來,理解不足的地方也請教下大家。
在項目里面實現(xiàn)左的菜單折疊顯示的效果,這個在軟件界面里是常見的(本來到網(wǎng)上copy一段代碼也就了事了,估計寫的比我都好,但學習嘛,就要有學習的精神^^!),
我是用.animate()去實現(xiàn)隱藏展開的,代碼如下:
<!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;//設置狀態(tài)判斷
$('#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下執(zhí)行是正常的??墒荌E6下無法隱藏left,原因是因為ie6默認內(nèi)容高寬度超出時,DIV會自動撐開。所以只要給.left{}加個overflow:hidden,問題也就解決~~
PS:本來早上是寫個函數(shù)把.left里面的內(nèi)容隱藏掉的,在寫博文的時候突然想通了這個原理,還以為是.animate()在IE6下有BUG
我是用.animate()去實現(xiàn)隱藏展開的,代碼如下:
復制代碼 代碼如下:
<!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;//設置狀態(tài)判斷
$('#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下執(zhí)行是正常的??墒荌E6下無法隱藏left,原因是因為ie6默認內(nèi)容高寬度超出時,DIV會自動撐開。所以只要給.left{}加個overflow:hidden,問題也就解決~~
PS:本來早上是寫個函數(shù)把.left里面的內(nèi)容隱藏掉的,在寫博文的時候突然想通了這個原理,還以為是.animate()在IE6下有BUG
您可能感興趣的文章:
- 解決jQuery ajax請求在IE6中莫名中斷的問題
- jQuery解決IE6、7、8不能使用 JSON.stringify 函數(shù)的問題
- jquery fancybox ie6不顯示關閉按鈕的解決辦法
- jquery submit ie6下失效的原因分析及解決方法
- 關于jquery中動態(tài)增加select,事件無效的快速解決方法
- jQuery:delegate中select()不起作用的解決方法(實例講解)
- jquery html動態(tài)生成select標簽出問題的解決方法
- jQuery選中select控件 無法設置selected的解決方法
- jQuery 跨域訪問問題解決方法
- jquery的ajax()函數(shù)傳值中文亂碼解決方法介紹
- jQuery在ie6下無法設置select選中的解決方法詳解
相關文章
jQuery+CSS3實現(xiàn)四種應用廣泛的導航條制作實例詳解
這篇文章主要介紹了jQuery+CSS3實現(xiàn)多種類型的導航條制作實例詳解的相關資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09jquery分頁插件jquery.pagination.js實現(xiàn)無刷新分頁
這篇文章主要介紹了jquery分頁插件jquery.pagination.js實現(xiàn)無刷新分頁的相關資料,需要的朋友可以參考下2016-04-04jQuery頭像裁剪工具jcrop用法實例(附演示與demo源碼下載)
這篇文章主要介紹了jQuery頭像裁剪工具jcrop用法,結(jié)合實例形式分析了jQuery頭像裁剪工具jquery.jcrop.js具體使用技巧,并附帶了完整的demo源碼供讀者下載參考,需要的朋友可以參考下2016-01-01jquery操作checkbox火狐下第二次無法勾選的解決方法
這篇文章主要介紹了jquery操作checkbox火狐下第二次無法勾選問題的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-10