jqueryを解決するanimate()関数のIE 6での問題
1935 ワード
プロジェクトの中で左のメニューの折りたたみ表示の効果を実現して、これはソフトウェアのインタフェースの中でよく見られる(もともとネット上のcopyまで1段のコードでも済むので、私よりもよく書いてあると思いますが、勉強は、勉強の精神が必要です^^!)
私は使います.animate()は隠し展開を実現し、コードは以下の通りです.
このようにすれば、FF、IE 7-8、chromeで実行するのは正常です.しかしIE 6の下でleftを隠すことができないのは、ie 6のデフォルトのコンテンツの幅が超えた場合、DIVが自動的に開くからです.だからあげるだけだ.left{}overflow:hiddenを追加して、問題も解決します~~
PS:もともと朝は関数を书いていました.leftの中の内容が隠されていて、ブログを書いている間に突然この原理を理解して、そうだと思っていました.animate()はIE 6の下にBUGがあります
私は使います.animate()は隠し展開を実現し、コードは以下の通りです.
<br>$(function(){
<br>var i = 1;//
<br>$('#butid').click(function(){
<br>if(i == 1){
<br>$('.content').animate({left: '-=100px',width: '600px'}, "slow");
<br>$('.left').animate({width: '0px'}, "slow");
<br>i = 2;
<br>}else{
<br>$('.content').animate({left: '0px',width: '500px'}, "slow");
<br>$('.left').animate({width: '100px'}, "slow");//fadeOut()
<br>i = 1;
<br>}
<br>});
<br>});
<br>
123
123
このようにすれば、FF、IE 7-8、chromeで実行するのは正常です.しかしIE 6の下でleftを隠すことができないのは、ie 6のデフォルトのコンテンツの幅が超えた場合、DIVが自動的に開くからです.だからあげるだけだ.left{}overflow:hiddenを追加して、問題も解決します~~
PS:もともと朝は関数を书いていました.leftの中の内容が隠されていて、ブログを書いている間に突然この原理を理解して、そうだと思っていました.animate()はIE 6の下にBUGがあります