允许 SVG 文本在角度中可编辑
Allow SVG Text to be editable in Angular?
自1.3.1以来,AngularJS非常擅长SVG编写。大多数情况下,交互作用是 1。数据库或某种形式提供数据 -> Angular 将节点推送到 SVG 中。现在我希望能够不需要单独的表单来与数据交互,而是通过单击其绘制的 SVG 文本元素直接更改某个变量的值。我尝试直接在文本节点上使用可编辑的内容,但这不起作用。可能吗?
我写了一个指令:http://jsfiddle.net/michaschwab/68dtgcu3/1/而不是例如<text x="20" y="70" fill="red">{{foo}}</text>
你使用这些额外的标签:
<text x="20" y="70" fill="red" ng-model="foo" content-editable>{{foo}}</text>
这将在文本节点的顶部自动添加一个 contentEditablediv,这样你就看不到它了。更改该新div 将允许您直接编辑模型。有一些小错误:
- 文本节点的样式未完全复制,因此额外的div 可能可见。该位置还必须在窗口大小调整等时更新。
- 有一些$sce错误我没有处理。 这似乎是一个有用的链接来解决这个问题。
希望对您有所帮助!
相关文章:
- CKEditor Widget-阻止编辑可编辑元素本身
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何更改<svg>标记为<img>用js标记
- 高亮显示时编辑文本大小和颜色
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 将事件聚焦/模糊在可编辑内容的元素上
- 锚点元素不't使用svg时,请打开EDGE上的href
- 带有填充属性的SVG矩形显示在包含元素的上方插入框阴影
- SVG编辑链接获胜't在新窗口中打开
- 使用<对象>用于SVG和HTML中的内联css以编辑填充
- 通过JavaScript编辑外部SVG图形
- 将编辑的 SVG 文件另存为新文件或保存到数据库
- 在 JavaScript 中编辑 Inkscape SVG
- 允许 SVG 文本在角度中可编辑
- 使用SVG的图形编辑器
- SVG通过Javascript启动和编辑animateTransform
- 在svg编辑器中转换路径,方法使用用户输入值绘制
- jQuery SVG Line stroke-linejoin(编辑:SVG标记)