我想更改 Raphael 的纸张(对象基础)大小以适应窗口大小调整。[使用 Firefox_13.0、Raphael_2.1.0、WindowsXP]
如果可用,我想适合全屏模式。
====================================================
(脚步)
我创建了论文:paper = Raphael(0, 50, 800, 600); // 初始宽度和高度分别为 800 和 600。
我把物品放在纸上。
浏览器的窗口大小由 windowW = window.innerWidth 和 winnowH = window.innerHeight (在 Firefox 上)检查。
缩放值由 sv = windowW/800 计算;
并通过 paper.scale(sv, sv); 缩放纸张
====================================================
(剧本)
window.onload = 函数(){
paper = Raphael(0, 50, 800, 600);
var background = paper.rect(0, 0, 800, 600).attr({fill:'#669999'});
// placing the objects
var circle = ...;
var rect = ...;
var ellipse = ...;
winowW = window.innerWidth;
winowH = window.innerHeight;
sv = winowW/800.
paper.scale(sv, sv);
}
====================================================
(结果)
虽然 circle.scale(sv)、rect.scale(sv, sv) 和 ellipse.scale(sv, sv) 有效,但 paper.scale(sv, sv) 和 background.scale(sv, sv) 无效。
为什么会发生这种情况?我可以通过 window.onresize = function() {...} 实时获取窗口大小。如果有更好的方法,请告诉我。
谢谢,