为什么此代码适用于body标签而不是目标?

时间:2012-06-11 14:29:54

标签: jquery jquery-ui svg widget raphael

我使用基于jQuery UI小部件的插件通过Raphael将SVG应用于元素 - 而不是应用于我使用此代码选择的元素内部...

$('#red-dial').dial({
  barColor: '#F1858F',
  barValue: 26
});​

...它似乎是在关闭BODY标记之前添加SVG内容。这很奇怪,因为在我的插件日志记录中,这个元素'到控制台显示正确的HTML项目#red-dial被选中,并且在将其转换为widget插件之前,相同的代码正在运行。

任何人都知道为什么会这样?当然,这对我来说可能是一个愚蠢的错误!

所有代码的完整JSFiddle:http://jsfiddle.net/vQJng/4/

更新:我已经发现脚本是在我调用小部件的脚本文件之后插入SVG的。例如,如果我把代码:

$('#red-dial').dial({
  barColor: '#F1858F',
  barValue: 26
});

在窗口小部件文件的末尾,SVG插入了窗口小部件脚本文件标记之后的行。

1 个答案:

答案 0 :(得分:0)

我不相信这与你的小部件有任何关系;我认为这只是拉斐尔的行为。

作为一个例子,我刚刚创建了一个新的拉斐尔画布,而不是使用你的小部件,它生成相同的布局:

http://jsfiddle.net/vQJng/5/

enter image description here