javascript - 使用 IE9 支持的 jQuery 旋转一个 div

标签 javascript jquery

我有一些 div(基本上只是图像),当它们旋转 360 度时我会淡入。一切都在所有主流浏览器中都能完美运行,只是 IE 不行。

有效的 CSS3 代码

#box
{
    width: 400px;
    height: 400px;
    display: inline-block;
    position: absolute;
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transition: all 0.8s 1s ease-in-out;
    -webkit-transition: all 0.8s 1s ease-in-out;
    -moz-transition: all 0.8s 1s ease-in-out;
    -o-transition: all 0.8s 1s ease-in-out;
    opacity:0;
}

#box.animate
{
    transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    -ms-transform: rotate(360deg);
    opacity:100;
}

现在我的 jQuery 代码是

$("#box").addClass("animate");

不幸的是,这就是我的 jQuery 知识范围。我知道我可以使用 fadeIn() 函数来处理不透明度设置,但是可以用什么来处理旋转部分呢?使用任何类型的插件也是最后的选择。我只需要它在 IE9 中工作。如果它能在 Chrome、FF 和 Opera 中运行,那也很棒,但不是必须的。

有没有类似的东西

$("#box").animate(function() {
    $(this).fadeIn(1000).rotate(360);
});

我觉得这是一个相当简单的解决方案,只是我想不出该怎么做。另外,我不知道该代码是否有效,我不是 JS 专家。

最佳答案

听起来像是jquery的step函数要解决的问题。它比使用插件轻一点,你应该能够自定义不透明度和旋转动画。 This是一篇关于如何使用 step 函数的优秀文章。从该帖子推断,我得出以下结论:

function AnimateRotate(div_id, angle) {
    var $elem = $(div_id);
    $({deg: 0}).animate({deg: angle}, {
        duration: 1000,
        step: function(now) {
            $elem.css({
                transform: 'rotate(' + now + 'deg)'
            });
        }
    });
    $({opacity: 0}).animate({opacity: angle}, {
        duration: 1000,
        step: function(now) {
            $elem.css({
                opacity: now
            });
        }
    });
}

关于javascript - 使用 IE9 支持的 jQuery 旋转一个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17889790/

相关文章:

javascript - 我可以用数字动态更改图像然后将其打印为 PDF 吗

javascript - 是否有任何 javascript 函数,甚至在 jQuery 库中与 PHP print_r() 功能相同?

javascript - 如何停止免费的jqgrid禁用工具栏按钮来响应鼠标点击

javascript - 如何在 Angular 8 的 FullCalendar 中使用 gotoDate()

javascript - 如何更新动态表中的tablesorter onclick?

javascript - 排除未定义的值

javascript - 结合 document.load + blur

javascript - 去掉chart js折线图中的竖线

javascript - 如何在元素中添加标记?

javascript - 未捕获的引用错误 : function is not defined