【发布时间】:2012-11-18 10:20:43
【问题描述】:
<div ng-app="testrectApp">
<svg>
<rect height="10" width="10" style="fill: #00ff00" />
<testrect />
</svg>
</div>
这是我的指令
module.directive('testrect', function() {
return {
restrict: 'E',
template: '<rect top="20" left="20" height="10" width="10" style="fill: #ff00ff" />',
replace: true
};
});
但这就是元素最终在浏览器中的样子。填充两次不是错字。
<rect top="20" left="20" height="10" width="10" style="fill: #ff00ff;fill: #ff00ff"></rect>
这是一个 jsfiddle http://jsfiddle.net/RG2CF/
我试图做的事情是不可能的,还是我做错了什么?
谢谢
编辑:我应该补充一点,这个问题可能与模板 svg rect 被命名为 xhtml 而不是 svg 的事实有关,但我不确定如何强制这个或命名空间回到 svg,如果这实际上是解决方案。
【问题讨论】:
-
类似的讨论在这里:groups.google.com/forum/#!msg/angular/nP5JSuRuBMw/Wkv4DGMrtEUJ(在我看来,AngularJS 处理模板的方式不支持 SVG)
-
谢谢。这很有帮助。我的印象是 Google 小组是大多数 Angularjs 讨论的地方。
-
更改角度版本时不会出现“填充两次”。它似乎特定于 1.2.1。可能介绍人:github.com/angular/angular.js/commit/…
标签: javascript svg angularjs