javascript - 是否可以使用 JavaScript 操作嵌入在 HTML 文档中的 SVG 文档?

标签 javascript html svg

我制作了一个 SVG 图像,或者更像是迷你应用程序,用于查看数据图表。我想将其包含在 HTML 页面中,并在 SVG 图像上调用方法。

例子:

<object id="img" data="image.svg" width="500" height="300"/>
<script>document.getElementById("img").addData([1,23,4]);</script>

是否可以在 SVG 文档上调用方法?如果是这样,我如何声明要在 SVG 文件中公开的方法,以及如何从 HTML 文档中调用它们?

最佳答案

解决方法:

在 svg 中:

<script>document.method = function() {}</script>

在html中(使用原型(prototype)添加事件监听器):

<script>$("img").observe("load", function() {$("img").contentDocument.method()});

您需要监听图像上的加载事件。加载图像后,您可以使用 element.contentDocument 访问 svg 文档中的 document 变量。添加到其中的任何方法都将可用。

关于javascript - 是否可以使用 JavaScript 操作嵌入在 HTML 文档中的 SVG 文档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/138309/

相关文章:

javascript - EJS 模板中的外部 js

javascript - 如何更改象形图的图标?

javascript - 在事件监听器中使用 typeof

php - javascript 根据第一个更改剩余的下拉值

javascript - setTimeout 的替代方案?

javascript - 在 Angular 中使用占位符

php - 使用 PHP 在 MySQL 数据库上实现编辑和删除按钮

jquery - 奇怪的 IE7 问题

python - 如何将 svg 文件加载到我的 python flask 页面中?

jquery-ui - SVG 'getBBox' 在 jQueryUI 选项卡中失败