HTML 中的 JavaScript 和 SVG [重复]

2024-04-15

我有 JavaScript 文件。 我有 SVG 文件。 我还有 HTML 文件。

<head>
...
<link rel="stylesheet" href="style.css" type="text/css" charset="utf-8">
...
</head>
<body>
...
<img src='svgfile.svg' type='image/svg+xml' />
...
</body>

有人知道如何在 JavaScript 中调用 SVG 元素吗? (以圆圈为例)


如果您想使用 Javascript 与加载到 HTML5 页面中的 svg 文件进行动态交互,则必须将 svg 加载为inline。如果您加载为<object>你无法使用 JavaScript 对其进行编程。但是,您可以通过以下方式将 svg 文件加载为 xmlXMLHttpRequest并填充一个DIVinnerHTML与回应。然后可以通过 JavaScript 动态更改此内联 SVG。这适用于所有浏览器。尝试下面的文件。

假设你有一个 SVG 文件(my.svg)

<svg xmlns="http://www.w3.org/2000/svg" width="400" height="400">
<circle id="myCircle" cx="200" cy="200" fill="blue" r="150" />
</svg>

你的 HTML5 文件如下:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<center>
<div id="svgInlineDiv" style='background-color:lightgreen;width:400px;height:400px;'></div>
<button onClick=changeInlineCircleColor()>Change Circle Color</button>
<div id="svgObjectDiv" style='background-color:lightblue;width:400px;height:400px;'>
<object data="my.svg" type="image/svg+xml" id="objsvg" width="100%" height="100%"></object>
</div>
</center>
<script id=myScript>
function changeInlineCircleColor()
{
    myCircle.setAttribute("fill","red")
}
</script>
<script>
document.addEventListener("onload",inlineSVG(),false)
function inlineSVG()
{
    var SVGFile="my.svg"
    var loadXML = new XMLHttpRequest;
    function handler(){
    if(loadXML.readyState == 4 && loadXML.status == 200)
        svgInlineDiv.innerHTML=loadXML.responseText
    }
    if (loadXML != null){
        loadXML.open("GET", SVGFile, true);
        loadXML.onreadystatechange = handler;
        loadXML.send();
    }
}
</script>
</body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML 中的 JavaScript 和 SVG [重复] 的相关文章

  • Dialogflow Fulfillment Webhook 调用失败

    I am new to dialogflow fulfillment and I am trying to retrieve news from news API based on user questions I followed doc
  • 在 Chrome 中为

    我已经看到这个问题多次出现 但没有任何明确的解决方案 我正在加载一个简单的视频
  • 角度垫排序不适用于带点表示法的 matColumnDef

    我正在尝试按列对表进行排序 当我必须过滤另一个结果中的结果时 就会出现问题 我尝试通过括号表示法和点表示法访问该属性 但没有给出结果 还将最终节点放置在 matColumnDef 中 但失败 因为有 2 列同名 table table
  • 如何在 JavaScript 中将变量的内容写入文件[重复]

    这个问题在这里已经有答案了 可能的重复 firefox 如何启用本地 JavaScript 来读取 写入我的 PC 上的文件 https stackoverflow com questions 2846045 firefox how to
  • 哪些 HTML 元素不能包含子节点?

    我一直在寻找一份详尽的清单 但在任何地方都找不到 为了避免必须仔细阅读规范 有谁知道它们是什么 我认为可以包含子元素的补充元素列表也很有用 XHTML 1 和 HTML5 之间的列表有何不同 您可以在以下位置找到 void 元素 不能有任何
  • 冒泡可用于图像加载事件吗?

    我可以用吗 window addEventListner 某种程度上来说 我所有的图像都有一个display none 图像加载后 我想设置display inline 这样我就可以规范下载图像时显示的内容 在这种情况下 我无法预加载图像
  • Next.js:错误:React.Children.only 期望接收单个 React 元素子元素

    我有一个名为Nav inside components目录及其代码如下所示 import Link from next link const Nav gt return div a Home a a About a div export d
  • 如何在具有相同值的下拉菜单上触发 jQuery 更改事件

    即使用户选择相同的值 如何每次都触发 jQuery 更改事件 我需要刷新效果 例如如果用户选择Lawyer它会发出警报hello然后用户再次选择Lawyer从下拉菜单中 它应该发出警报hello 我怎样才能实现它 以下是代码 jQuery
  • Socket IO 服务器到服务器

    服务器是否可以使用 Socket IO 连接到另一个服务器并被视为客户端 并让它加入房间 接收 io sockets in lobby emit 和更多 第一个服务器也在监听连接 消息 嘿 Brad 下面是我的完整 js 应用程序 供参考
  • JSONP 使用 JQuery 从 HTTPS 协议获取 JSON

    我正在尝试获取从 https 安全站点发送的 JSON 客户端希望不要使用任何服务器端语言 全部都是 Javascript 我读到 当使用 Jquery 中的 ajax 函数时 我必须使用 JSONP 才能从安全站点加载 JSON 我的第一
  • Riak 在 MapReduce 查询中失败。使用哪种配置?

    我正在与 riak riak js 结合开发一个 nodejs 应用程序 并遇到以下问题 运行此请求 db mapreduce add logs run 正确返回存储在存储桶日志中的所有 155 000 个项目及其 ID logs 1GXt
  • 如何使用 GreaseMonkey 让浏览器恢复“/”键?

    Lots of web pages seem to use the key for searching I d like to disable that because 100 of the time I want to use to se
  • jQuery 中什么函数相当于 .SelectMany()?

    让我解释一下 我们知道 jQuery 中的映射函数充当 Select 如 LINQ 中 tr map function return this children first returns 20 tds 现在的问题是我们如何在 jQuery
  • for循环中需要声明变量吗?

    有什么区别 for var i 0 i lt 5 i for i 0 i lt 5 i 是否有必要包含 var 关键字 我知道 var 关键字会影响变量范围 但我无法理解是否有必要在 for 循环中包含该关键字 在第二个示例中 您的变量是全
  • 使用 ng-if 改变角度方向

    我想通过单击将方向从 rtl 更改为 ltr and in 设置 html
  • 绘制多边形

    我正在使用 Google Maps API V3 根据路径绘制多边形 该路径是随机未排序坐标点 LatLng 的数组 这会产生以下形状 Polylines intersect Problem 由于多边形的形状取决于路径中点的顺序 因此如何对
  • Vue-Router 抽象父路由

    我正在尝试将当前网站迁移到 vuejs 站点地图必须是 login signup password reset browse search dozens of other routes 由于其中一些路线共享大量 fx 因此我将它们设为父路线
  • 如何使用 javascript 更改文件扩展名

    有谁知道在 Javascript 中更改文件扩展名的简单方法吗 例如 我有一个带有 first docx 的变量 但我需要将其更改为 first html 这将改变字符串包含文件名 let file first docx file file
  • Keycloak-js updateToken(minValidity) 需要澄清

    我在Keycloak js中阅读了很多该方法的示例 但没有对以下方法进行明确的解释 updateToken minValidity number KeycloakPromise
  • Jquery 以编程方式更改

    文本

    编辑 解决方案是将其添加到个人资料页面而不是性别页面 profile live pageinit function event p pTest text localStorage getItem gender 我在列表视图中有一个带有一些文

随机推荐

  • 通过 Google Drive API 获取共享链接

    我正在使用 Google Drive 开发一个应用程序 我希望用户能够通过链接共享文件 将权限设置为anyone and withLink如中所述谷歌开发者文档 https developers google com drive v2 re
  • .cpp 文件中的模板专业化 + .h 文件中的主模板声明

    根据https eel is c draft temp expl spec 7 https eel is c draft temp expl spec 7 如果模板 成员模板或类模板的成员被显式特化 则在每个翻译单元中 该特化的声明应可从该
  • 使用 VBA 在 Excel 2010 中查询表 (QueryTables) 使用 VBA 创建许多连接

    我正在跟踪在另一个网站上找到的代码 这是我的代码的基础知识 Dim SQL As String Dim connString As String connString ODBC DSN DB01 UID PWD Database MyDat
  • jQuery 日期选择器不适用于 ajax 生成的输入字段

    我有一个输入字段 它是通过 Ajax 从服务器端生成的 并插入到当前页面中 我的问题是 当通过 Ajax 生成输入字段时 jQuery 日期选择器无法在输入字段上工作 但当字段直接放置在页面中时它可以工作 下面 我提供了代码的缩小版本 HT
  • 设置文件名并在新选项卡中打开 blob pdf 类型[重复]

    这个问题在这里已经有答案了 我正在尝试在浏览器的新选项卡中打开 blob 字节流 它是有效的 但我不确定如何设置文件名 以便每个文档在下载时都有唯一的名称 现在 文档在保存时默认为 document pdf var blob new Blo
  • 通过访问限制列出的 Kubernetes 命名空间

    我有一套users dev team 谁只需要访问dev and qa命名空间 我创建了一个服务帐户 集群角色和集群角色绑定 如下所示 服务帐号 apiVersion v1 kind ServiceAccount metadata name
  • 从 Backbone 检索 Rails/devise current_user

    我有一个应用程序 可以通过 Devise 管理 Rails 的注册 输入 退出 当我登录时 我被重定向到 Backbone 启动的 Dashboard index 我想以某种方式在 Backbone 中检索我的 current user i
  • 如何在iPhone上读取RGB像素数据

    我想知道如何在iPhone上扫描图像并分析每个像素的RGB值 从而最终确定整个图像的平均RGB 如果有人能将我推向正确的方向 我将不胜感激 我是图像分析新手 不确定从哪里开始 或者 iOS 5 API 中是否包含类似的内容 只需粘贴它 我正
  • 检查 DataGridView 上的所有复选框项目

    这是场景 I have checkbox 名称 检查全部 ID chkItems 和datagridview 当我单击此复选框时 上的所有复选框datagridview也会被检查 我还在网格上添加了复选框列 DataGridViewChec
  • 需要了解Android中的uses-feature

    uses feature按以下方式使用
  • 可以将此处结果上的匹配替换为map_err和“?”

    我有一些代码看起来像这样 大大简化的版本 一个函数接受两个类型的函数参数LoadClient and CheckApproval并返回错误或字符串 pub struct Client pub id String pub enum MyErr
  • Json.NET 可以对流进行序列化/反序列化吗?

    我听说 Json NET 比 DataContractJsonSerializer 更快 并且想尝试一下 但我在 JsonConvert 上找不到任何采用流而不是字符串的方法 例如 为了在 WinPhone 上反序列化包含 JSON 的文件
  • Google 脚本检查一张纸上一列中的数据是否与另一张纸上另一列中的数据相同

    我正在尝试创建一个 Google 脚本来检查一张纸上一列中的数据是否与另一张纸上另一列中的数据相同 您知道我哪里出错了吗 谢谢 代码如下 function myFunction data from Salesworks var sheet
  • CSS 中的逗号,使用相同 CSS 的多个选择器

    Resource table Tbl td some css Resource table Tbl td num some css 2 Resource table Tbl td num span icon some css 3 Resou
  • x >= 0 比 x > -1 更有效吗?

    在 C 中与 int 进行比较是x gt 0比更有效率x gt 1 简短的回答 不 更长的答案提供一些教育见解 这完全取决于您的编译器 尽管我打赌每个理智的编译器都会为这两个表达式创建相同的代码 示例代码 int func ge0 int
  • 如何查找USB盘符?

    我正在编写一个安装程序来将应用程序安装到 USB 驱动器 该应用程序只能从 USB 驱动器使用 因此它可以通过自动选择要安装的 USB 驱动器来为用户节省额外的步骤 我可能会尝试使用 Nullsoft 或 MSI 进行安装 但由于我最熟悉
  • 列出目录和子目录中的所有 xml 文件

    我想列出目录及其子目录中的所有 xml 文件 我尝试了 ls LR 但无法过滤除 xml 之外的其他文件 我想要类似 ls LR 的东西grep xml Thanks 您可以使用find命令 find type f name xml
  • Microsoft Graph API 更新其他用户的照片?

    使用 Microsoft Graph API 我能够获取 Azure Active Directory 租户中所有用户的列表 并确定他们是否有个人资料图片 然后 我想获取没有照片的用户列表并为他们上传一张 但 API 返回 403 错误 即
  • MVC5 通过流畅验证比较两个可为空的日期

    如何在流畅的验证中编写规则来检查两个可为空的日期 因为开始日期需要早于结束日期 我正在思考 RuleFor c gt c StartDate NotEmpty 如果开始日期不为空且结束日期不为空则进行比较 像这样的东西 RuleFor ac
  • HTML 中的 JavaScript 和 SVG [重复]

    这个问题在这里已经有答案了 我有 JavaScript 文件 我有 SVG 文件 我还有 HTML 文件 img src svgfile svg type 有人知道如何在 JavaScript 中调用 SVG 元素吗 以圆圈为例 如果您想使