0

要求是当我们点击图片时,图片应该是旋转的,下面的相应数据应该被隐藏,当我们再次点击图片时,图片应该是旋转的,相应的隐藏数据应该被显示。

就像在 Visual Studio 2010 解决方案资源管理器中一样,当我们单击图像按钮时,图像正在旋转并且下面的相应数据被隐藏。

我的代码在 Google cromo 和 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 错误。

对象不支持属性或方法“切换”

然后我把它改成

$('#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 回答