0

这段代码应该在 Raphael 论文上画出两个正方形:

var paper = Raphael("canvas", 1100, 750);
var numbers = "0,0,250,180";
var box1 = paper.rect(numbers);
var box2 = paper.rect(250, 0, 250, 180);

但是,实际上只有 box2 被绘制。如何传入变量集以绘制框 1?

http://jsfiddle.net/xqwBB/

谢谢,凯文

4

2 回答 2

1

通常,您可以使用Function#apply字符串并将其拆分为数组。 apply将调用函数,第一个参数为 as this,第二个参数为参数数组:

var box1 = paper.rect.apply(paper, numbers.split(","));

jsFiddle

于 2013-03-21T01:36:18.313 回答
0

1个变量数字=“0,0,250,180”;

在这里,您正在创建一个字符串,同时.rect()将四个数字作为参数。

如果您的参数以字符串的形式出现,请将其拆分并调用 .rect()

var numbers = "0,0,250,180";
numbers = numbers.split(","); // now numbers is an array
canvas.rect(numbers[0], numbers[1], numbers[2], numbers[3]);
于 2013-03-21T00:51:06.550 回答