在Raphael中使用fn意味着什么?

时间:2010-10-12 09:49:51

标签: javascript raphael

我在raphael中看到了一个用法,这是一个javascript实验室。

Raphael.fn.g.piechart = function (cx, cy, r, values, opts) {
  // blah...blah
}
它扩展了raphael,所以人们可以像r = Raphael一样使用; r.g.piechart。

我搜索谷歌并没有什么似乎清楚我的想法。希望你能帮忙。

6 个答案:

答案 0 :(得分:8)

fn用于 adding your own methods to the canvas

您添加到fn的所有方法都可以在画布上使用。这与可用于 for example an element 的方法形成对比(您将使用el)。

由于扩展fn对象将在画布上起作用,因此您必须在创建Raphael实例之前添加自定义方法 (如果要扩展{{1},则不是这样;一个元素)。

例如,来自文档:

el

更新(感谢AleksandraKos):

请注意,namespaced plugins was removed in Raphael 2.0

答案 1 :(得分:3)

最初它只是一个与Raphael一起创建的空对象,它实际上只是:

Raphael.fn = {};

It's a common place for plugins to be stored,并在创建新实例时从那里调用它们。

答案 2 :(得分:2)

它的功能简称。

它用作Raphael存储其所有功能的命名空间,它自动允许您将这些功能应用于纸质对象。

您还可以通过向其添加功能来扩展Raphael的功能。

这类似于jQuery的$.fn的工作方式。

答案 3 :(得分:2)

在你自己的JS代码中它可以是你想要的任何东西 - 它不是reserved word,它没有任何特殊含义,所以你可以命名变量或方法fn就像你可以使用名称如foomyVariable。例如,在jQuery中,jQuery.fn === jQuery.prototype(插件作者的快捷方式)。

答案 4 :(得分:1)

fn在JavaScript中没什么特别之处。这只是Raphael使用的房产名称。见http://raphaeljs.com/reference.html

答案 5 :(得分:1)

JavaScript中的fn没什么特别之处。