中心与使用 IE8 旋转图像 (jQueryRotate)

发布于 2024-12-11 02:56:24 字数 341 浏览 1 评论 0原文

所有,

我正在寻找一种方法来中心和旋转图像以响应按钮单击。我正在使用 jQueryRotate 库。

这是我正在考虑的方法。

http://jsfiddle.net/HatAndBeard/k3Gxj/6/

这在 Chrome/Firefox 中运行良好,但在 IE8 中不起作用或更低。有一些图像伪影我无法消除。有什么想法吗?

PS 我对如何进行轮换没有严格要求,因此也欢迎其他方法。

PSS 如果 JSFiddle 链接不符合您的喜好,我可以发布代码。

All,

I'm looking for a way to center and rotate an image in response to a button click. I'm using the jQueryRotate library.

Here is the approach I was considering.

http://jsfiddle.net/HatAndBeard/k3Gxj/6/

This works fine in Chrome/Firefox but not in IE8 or lower. There are some image artifacts that I can't get rid of. Any ideas?

P.S. I don't have strict requirements for how the rotation is done, so other approaches are welcome as well.

P.S.S I can post the code if JSFiddle links aren't to your liking.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

野侃 2024-12-18 02:56:25

你好,我是这个插件的作者,我欢迎在插件的主页上提出有关此插件的任何评论和问题:)

你能解释一下你的问题吗,因为我无法让它在 IE 8 或 IE8 中模拟的 IE7 中重现。创建问题也很好:)

我看到的唯一“奇怪”问题只是加载图像效果,如果加载页面后您只需执行 $(img).rotate(0) ->,您可以轻松摆脱该效果;这将确保当您单击图像时,它将准备好制作动画:)

干杯,

Hi im a author of this plugin and I welcome any of comments and issues about this plugin on the homepage of a plugin :)

Can you explain a bit more your problem, as I cant get it to reproduce in IE 8 or IE7 emulated in IE8. Also creating issue would be nice :)

The only "strange" problem that I saw is just a loading image effect that you can easily get rid of if after loading your page you just do a $(img).rotate(0) -> this will make sure that when you click image it will be ready to animate :)

Cheers,

巴黎盛开的樱花 2024-12-18 02:56:25

您是否尝试过使用 RaphaelJS 来代替。通过这个库,我过去拥有良好的跨浏览器体验。

点击时使用 raphael 旋转图像是一项简单的任务,看看这个演示:http://raphaeljs.com /图像旋转.html

Have you tried to use RaphaelJS instead. With this library I had good cross browser experience in the past.

Rotating images with raphael on click is an easy task, take a look at this demo: http://raphaeljs.com/image-rotation.html

怪我鬧 2024-12-18 02:56:24

我最终通过使用 IE 中的 BasicImage 旋转功能解决了这个问题。我只需要以 90 度增量显示图像,因此这种方法是可行的。

我所做的粗略草图...

function ieRotate(element, rotation) {
            var rotationInt = 0;
            switch (rotation % 360) {
                case 0:
                    rotationInt = 0;
                    break;
                case 270:
                case -90:
                    rotationInt = 3;
                    break;
                case 180:
                case -180:
                    rotationInt = 2;
                    break;
                case 90:
                case -270:
                    rotationInt = 1;
                    break;

            }
            element.css('filter', 'progid:DXImageTransform.Microsoft.BasicImage(rotation=' + rotationInt + ')');
        }

I ended up working around the problem by using the BasicImage rotation functionality in IE. I only needed to show the images in 90 degree increments so this approach was workable.

A rough sketch of what I did...

function ieRotate(element, rotation) {
            var rotationInt = 0;
            switch (rotation % 360) {
                case 0:
                    rotationInt = 0;
                    break;
                case 270:
                case -90:
                    rotationInt = 3;
                    break;
                case 180:
                case -180:
                    rotationInt = 2;
                    break;
                case 90:
                case -270:
                    rotationInt = 1;
                    break;

            }
            element.css('filter', 'progid:DXImageTransform.Microsoft.BasicImage(rotation=' + rotationInt + ')');
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文