5

我正在使用raphael制作一个动画的交互式图表,我需要在 iPhone 上很好地工作。我有 2 个小渲染问题,我正在努力解决。

第一个是,每当您单击附加了单击处理程序的 svg 元素时,移动 safari 会在其周围绘制一个透明的灰色框以指示单击的内容。当您单击超链接时,它会执行相同的操作。在这种情况下,灰色框非常难看。是否有任何 css 属性告诉移动 safari 不要这样做?

第二个问题是动画。在任何动画的持续时间内,移动 safari 都会在 svg 画布上添加一个丑陋的黑色边框。它仅在动画进行时可见,并且仅在画布的底部和右侧边缘可见。知道如何解决这个问题吗?

这是使用 raphael 页面上的一个演示的复制和粘贴拍摄的,只有白色背景。

4

1 回答 1

8

这篇文章有一些有用的提示,即...

禁用选择闪光灯:

原来有一种方法可以通过使用 WebKit CSS 属性 -webkit-tap-highlight-color 来关闭它,并将颜色的 alpha 设置为 0,在我的 Javascript 代码中就可以了:

document.documentElement.style.webkitTapHighlightColor = "rgba(0,0,0,0)";

并禁用“动作”弹出窗口:

我需要禁用的第二件事是如果您点击并按住 UIWebView 的内容几秒钟,就会出现“动作”弹出窗口。这也是通过一个名为 -webkit-touch-callout 的 CSS 属性来控制的,在这种情况下将其设置为“none”就可以了:

document.documentElement.style.webkitTouchCallout = "none";
于 2009-10-11T00:27:13.587 回答