2

同じ場所に切り替えたい複数のdivを持つページを作成しました。これはchromeとfirefoxで正常に機能しますが、予想どおりInternetExplorerでは機能しません。1つのページで同じ方法を使用しましたが、正常に機能しますが、別のページで複製して複数のdivで機能させると、機能しなくなります。

jqueryは次のとおりです。

<script type="text/javascript">
$(document).ready(function(){ 

//Hide the box       
  $("#sub1").hide();


//Sets up the click function and speed  
  $("#btn-slide").click(function(){
  $("#sub1").slideToggle("slow",function(){



//Toggles link text between open and close  
//=="Open" or as changed here to "VIEW DR. MARTENS HISTORY" is vital in order to close the box
($("#btn-slide").html()=="| THE PUNK SCENE |")?$("#btn-slide").html("Close"):$("#btn-slide").html("| THE PUNK SCENE |");



  });
  return false; 
}); 
</script>

これは私のヘッドタグにあり、3回複製したので、合計4つのdivで動作します。#btn-slideを#btn-slide1などに変更しました。

htmlは次のとおりです。

<div id="move"><a  href="#" title="| THE PUNK SCENE |" id="btn-slide"  >| THE PUNK SCENE |</a></div>

これは、クリックして非表示のdivを開くためのリンクです。繰り返しますが、これらのdivの多くは、異なるdiv idが異なる#btn-slideを呼び出しています。

これは、開かれているdivのhtmlです。

  <div id="sub1"><strong>The Punk scene</strong> -and 2nd Generation Skins<br />
    <br />
    Following the Skins the Punk scene was a well  known youth subculture to wear Dr. Martens. When Punk became known in the late  70's a second generation of Skins derived from the Punk scene. The media have  often portrayed the 2nd gen Skin over the years, with the popular opinion of  Skinhead culture being a 14 hole Dr. Marten (and white laces wearing)  aggressive young white male. Fascist parties sourced new recruits from football  games and amongst a violent throng of spectators some new recruits were Skins.  <br />
       </div>

IEと互換性を持たせる方法について誰かが考えたことは、これが理にかなっていることを願っています。IEでf12ツールを使用しましたが、エラーはありません。

4

2 に答える 2

1

いくつかの閉じ括弧がありませんでした。

これがフィドルです:http://jsfiddle.net/esRFt/7/

IE8では問題なく動作するようです。どのバージョンに問題がありますか?

于 2012-08-08T17:13:00.450 に答える
0

jQueryのhtml()関数は.innerHTML内部的に呼び出すだけで、IEではバグがあることが知られています。三元状態では、別のテスト(などhasClass())を使用する必要があります。

于 2012-08-08T17:05:28.250 に答える