0

要件は、画像をクリックすると、画像が回転し、それぞれの下のデータが非表示になり、画像をクリックすると、画像が回転し、それぞれの非表示のデータが表示される必要があります。

Visual Studio 2010ソリューションエクスプローラーのように、画像ボタンをクリックすると、画像が回転し、下のデータが非表示になります。

私のコードはGooglecromoとMozillaで正常に機能しています。しかし、IE8とIE9では正しく機能していません。

私のプラグイン

<script src="@Url.Content("~/Scripts/jQueryRotate.2.2.js")" type="text/javascript">   </script>

IE8の私のコード:

<!--[if IE 8]>
<script type="text/javascript">
    var deg = 0;
    $(document).ready(function () {
        $('#imgId').click(function () {
            deg = deg ? 0 : -90;
            rotationDeg = 0;
            switch (deg % 360) {
                case 0:
                    rotationDeg=0;
                    break;
                case -90:
                    rotationDeg=3;
                    break;
            }
            $('#divId').slideToggle("slow");           
            $("#imgId").css('filter', 'progid:DXImageTransform.Microsoft.BasicImage(rotation=' + rotationDeg + ')');
            $('#divId').Toggle("slow");
        });
    });
</script>
<![endif]-->

上記のコードは正常に機能していますが、以下のjavaScriptエラーが表示されています。

オブジェクトはプロパティまたはメソッド'Toggle'をサポートしていません

それから私はそれをに変更しました

$('#divId').toggle("slow");

これでjavaScriptエラーは解決されましたが、画像の回転がtoggle正しく機能していません。IE9でも同じ問題が発生します。誰かがこれを助けることができます-どうすればそれを解決できますか?

4

1 に答える 1

0

これを試して:

<!--[if IE 8]>
<script type="text/javascript">
var deg = 0;
 $(document).ready(function () {
 $('#imgId').click(function () {
               deg = deg ? 0 : -90;
               rotationDeg=0;
               switch(deg%360){
               case 0:
               rotationDeg=0;
               break;
               case -90:
               rotationDeg=3;
               break;
               //<---------removed the '}' here
  $('#divId').slideToggle("slow");           
$("#imgId").css('filter','progid:DXImageTransform.Microsoft.BasicImage(rotation='+rotationDeg+')');
 $('#divId').toggle("slow");

       });
});
       </script>
<![endif]-->
于 2013-01-09T11:16:14.340 に答える