SVG使用element来克隆SVG

2024-02-27

是否可以在单独的 svg 中“使用”整个其他 svg?我想使用 d3 生成的地图作为同一页面上的图标。这是我尝试过的,但它不起作用。

 <svg id="map">
    svg stuff here
 </svg>


 <svg id="bar"> 
     svg stuff here
     <use xlink:href="#map" height="20" width="30" ...>
 </svg>

还尝试了克隆方法,但最终将整个 svg 放在另一个 svg 中,并且无法缩放。例如。 makeicon("#map", "#icon")

function makeicon(source, destination) {
    //https://groups.google.com/forum/?fromgroups=#!topic/d3-js/-EEgqt29wmQ
    var src = d3.select(source);
    var dest = d3.select(destination);

    if (!src.empty() && !dest.empty()) {

        var newNode = d3.select(dest.node().insertBefore(src.node().cloneNode(true),
            src.node().nextSibling))
            .attr("id", "newnode")
            .attr("width", null)  // remove height and width of original svg
            .attr("height", null)

            .attr("viewBox", "0 0 20 30");   // try to make it smaller

        return newNode;

它应该工作正常。

下面是一个在 Firefox、Opera 和 Chrome 中运行良好的简单示例:http://jsfiddle.net/gew54/ http://jsfiddle.net/gew54/

Source:

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <style type='text/css'>
            svg {
                width: 100px;
                height: 100px;
            }
        </style>
    </head>
    <body>
        <svg id="map" viewBox="0 0 100 100">
            <circle cx="50" cy="50" r="20" fill="lime"/>
        </svg>
        <svg id="bar" viewBox="0 0 100 100">
            <use xlink:href="#map" />
        </svg>
    </body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SVG使用element来克隆SVG 的相关文章

  • 动画 D3 地球仪 (d3.geo.azimuthal)

    我对 d3 javascript 库有疑问 我想使用方位角 http mbostock github com d3 talk 20111018 azimuthal html地球 我想从地球上的经度和纬度坐标插入点 并使地球动画化 而无需使用
  • 设置 D3 力定向图

    致尊敬的读者 我对 javascript 相当陌生 我也遇到过这个问题 我正在尝试实现这个力导向图的修改版本 http mbostock github com d3 ex force html http mbostock github co
  • 有没有适用于 Android 的精简版 SVG 查看器? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Android 是否支持查看 SVG 文件 或者是否有适用于 Android 平台的第 3 方 SVG
  • 如何制作一条带有边框的 SVG“线”?

    我有一个小 svg 小部件 其目的是显示角度列表 参见图片 现在 角度是线元素 只有描边 没有填充 但现在我想要一个 内部填充 颜色和周围的 描边 边框 我猜 line 元素无法处理这个问题 那么我应该使用什么来代替呢 请注意 线条笔划的线
  • 移动浏览器上带有阴影模糊的 SVG

    我正在努力在尽可能多的平台上制作带有阴影的 SVG 图标 我为此使用以下简单的 CSS test width 14px height 14px background image url images test svg background
  • 根据 D3 中的属性值对对象进行排序

    我有一系列在 D3 中使用的对象 例如 var cities city London country United Kingdom index 280 city Geneva country Switzerland index 259 ci
  • 如果满足条件,则在另一个转换期间添加并发转换

    我试图在转换运行时添加一个新的转换 条件是如果 bar1 宽度与 bar2 匹配 则条形会更改位置 我使用了transition tween来查看是否满足条件 当第二个转换开始时 第一个转换停止 我希望第一个转换继续运行直到其持续时间结束
  • 如何将transform-origin与SVG结合使用? [复制]

    这个问题在这里已经有答案了 我正在尝试旋转SVG path从它的中心但它不工作 a width 40px height 40px width 40px font size 1 5rem padding 1px overflow hidden
  • svg / d3.js 矩形一侧的圆角

    我知道 svg 有一个内置函数可以做圆角 但我只需要在四个角中的 2 个上做圆角 我知道我可以在彼此之上绘制多个矩形来模仿这一点 但这看起来有点俗气 有什么方法可以使用剪辑或任何 d3 js 方法来做到这一点吗 现在我有一个水平条形图 其中
  • 在 SVG 中绘制空心形状

    我想在 SVG 中绘制一个中心被挖空的形状 我问这个问题是为了画一个中间有一个圆的圆here https stackoverflow com questions 8193675 draw a hollow circle in svg 819
  • 直接从 Javascript 代码访问 SVG 文件

    我有这个 HTML 代码 它调用我的 javascript 代码 该代码用于仪表 在 javascript 代码中 我尝试访问 SVG 文件 并修改 仪表的 指针以显示所需的值 该代码运行良好 但是 我不想在 HTML 中调用 对象 id
  • 如何使用 dc.js 或 d3.js 为行图添加轴标签

    对于条形图和堆积图 我们可以使用 xAxisLabel X Axis Label and yAxisLabel Y Axis Label 为各个轴添加标签的函数 但 有没有办法为行图添加轴标签 尝试这样的事情 dc renderAll fu
  • Android 上的 SVG 支持

    Android 支持 SVG 吗 有什么例子吗 最完整的答案是这样的 Android 2 x 默认浏览器本身不支持 SVG Android 3 默认浏览器支持 SVG 要将 SVG 支持添加到 2 x 版本的平台 您有两个基本选择 安装功能
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对
  • SVG 动画不适用于 Chrome 中的 favicon

    In the SVG 图标已设置 这是旋转内圆的SVG文件的内容 Favicon 动画在 Chrome 中根本不起作用 如何让它在 Chrome 中工作 在 Firefox 中可以正常工作 在 Edge 中则不行 但 Chrome 是最重要
  • 将 SVG 的高度设置为行高?

    我想将我的 SVG 图像作为图标包含在标题旁边 h1 img src icon sell svg class icon Verkaufen h1 字体大小为h1 is 36px和line heigt is 1 1 我使用检查器工具发现计算出
  • 有没有办法将 SVG 字符串渲染到 Web Worker 中的 OffscreenCanvas?

    我正在开发一个网页 对 SVG 字符串数据进行一些相当繁重的处理 因为这些字符串的大小可能达到 m bs 所以我想将 SVG 的渲染 取决于浏览器 移至工作人员 以避免阻塞 UI 我的问题是 worker 中无法访问 DOM 元素 有没有办
  • d3.js - .exit().remove() 组元素不起作用

    我正在构建一个动态条形图 查看肯尼亚和坦桑尼亚男孩和女孩的考试成绩 用户可以从下拉菜单中选择他们想要查看哪个国家 肯尼亚 坦桑尼亚 和哪一年 2010 年 2011 年 的分数 我已清理所有数据并将其组织到单独的国家 地区年份 csv 文件
  • d3js v5 + Topojson v3 关于加入 csv 和 json 的优化

    为了制作地图 我需要将一些值从 csv 导入到 json直接在代码中 为了加载 json 和 csv 文件 我使用 Promise 对象的异步操作 并使用两个循环和一个公共键在 json 文件上添加新属性 for var i 0 i lt
  • 如何部分或仅按百分比沿路径过渡

    我是 d3 的初学者 目前无法使用最新版本 但我使用的是 3 x 版本 我想要实现的应该很简单 但遗憾的是我没有找到有关如何做到这一点的资源 目标是在我的 svg 中显示一条路径 然后我想显示例如一个圆并沿着路径过渡 移动 追踪圆 如果我想

随机推荐

  • 如何指定网页的语言,以便 Google Chrome 不提供翻译功能

    我有一个 Google Chrome 坚持认为是法语的页面 这是它的快照 http yootles com outbox overcleverchrome html http yootles com outbox overcleverchr
  • 发送带有纯文本后备的 HTML 新闻通讯

    我目前正在使用一个脚本 该脚本使用 file get contents 来获取 php 文件的内容 然后将其通过电子邮件发送给客户列表 我想更改脚本以允许纯文本回退 以降低被标记为垃圾邮件的风险 这是我目前的脚本 function send
  • Create-React-App 中的启动屏幕

    我正在使用 create react app 来设计 PWA 应用程序提供的默认启动屏幕是一个图标 位于屏幕中间 以及该图标下方的应用程序名称 图标和名称必须在清单文件中提供 问题 有没有什么方法可以自定义启动画面而不是使用默认的启动画面
  • 为什么 scikit-learn 的最近邻似乎没有返回正确的余弦相似距离?

    我正在尝试使用 scikit 的最近邻实现从随机值矩阵中查找与给定列向量最接近的列向量 该代码应该找到第 21 列的最近邻居 然后检查这些邻居与第 21 列的实际余弦相似度 from sklearn neighbors import Nea
  • T-SQL 根据列值的变化递增计数器

    我有如下示例表 该表按未显示的另一列排序 我需要根据值列中的任何变化来增加计数器列值 请参阅下面的示例 如何在 T SQL SQL Server 2014 中完成此操作 ID Value 1 3 2 3 3 2 4 2 5 2 6 3 7
  • 数据触发器未触发

    我有以下 xaml
  • 如何在不同平台有不同的Header? [复制]

    这个问题在这里已经有答案了 我对 C 还很陌生 我有一个必须在 Linux 和 Windows 中构建的文件 我想知道是否有一种方法可以在 Windows 和 Linux 的同一个文件中拥有不同的 include 列表 但不知何故我告诉它这
  • 如何在一个布局中实现多个recyclerview?

    我想创建一个窗格 其中有两个RecyclerViews 假设 MyItems AllItems 我创建了垂直LinearLayout 其中有TextView作为标题和RecyclerView 像这样的东西
  • 在 Visual Studio Webtest 中插入 120 秒等待

    我想在两个 Web 请求的执行之间添加 120 秒的延迟 我尝试过使用思考时间 但它不会暂停执行 120 秒 谁能告诉我如何添加等待以暂停执行 120 秒 在执行 2 个 Web 请求之后 然后继续执行下一个请求 我正在使用 Visual
  • ImportError:无法导入名称 celery

    我正在尝试使用 Celery Redis Flask 运行一些后台作业 我的应用程序结构是 myapp celery worker py manage py myapp init py app py bot init py tasks py
  • 使无边框窗口具有较暗较大的阴影

    当无边框窗口中的窗口变为活动状态时 如何创建更暗和更大的阴影 我对 NSWindow 进行了子类化 我的窗口成为主窗口和关键窗口 但这没有帮助 阴影仍然很小 那么也许有人知道如何解决这个问题 我也尝试过使阴影无效 但这也没有帮助 NSWin
  • 使用 SQL 中的结果计算每天的总数

    我的订单表中有 50 行 条目 我有一个列 当订单被认领时保存 名为claimed at 该字段中的日期格式如下 2011 10 03 07 07 33 格式为 yy mm dd 时间 我还有一个专栏叫price this price是他们
  • Loopback.io 的 ACL 问题

    我目前正在评估用于开发新项目的 API 部分的 Loopback io 但在设置正确的 ACL 条目时遇到问题 我希望完成的是给定一个身份验证令牌 GET 端点应该只返回用户拥有的对象 例如 对 Shows access token xxx
  • 什么是“SQLiteDatabase 创建且从未关闭”错误?

    我已经在我的适配器类中关闭了数据库 那么为什么这个错误显示在 logcat 上 但我的应用程序不强制关闭 但只有错误显示在 log cat 上 我应该关闭数据库以忽略此错误 我的错误是 下面 我离开哪个类来关闭数据库 我从此链接获取帮助ht
  • C#,求一个数的最大素因数

    我是编程新手 正在练习我的 C 编程技能 我的应用程序旨在查找用户输入的数字的最大素因数 但我的应用程序没有返回正确的答案 我真的不知道问题出在哪里 你能帮我么 using System using System Collections G
  • 从 Action Script 到 C# 的 Rijndael 加密

    我正在尝试在 Action Script 和 C 之间共享加密 我的任务是在 C 中解密以下消息 f1ca22a365ba54c005c3eb599d84b19c354d26dcf475ab4be775b991ac97884791017b1
  • UUID 转换为无符号整数

    有没有地方可以将 UUID 压缩 转换 编码 加密为无符号整数 我从 sql 表中读取 UUID 历史记录很难看 我无法更改 我只有一个 unsigned int 来存储它 这是 C 以防产生影响 对此有什么想法吗 谢谢 礼萨 正如其他人所
  • 在两个容器之间共享/tmp

    我在用着docker compose生成两个容器 我想分享 tmp这两个容器之间的目录 但不与主机 tmp如果可能的话 这是因为我正在通过上传一些文件flask to tmp并想要处理这些文件celery flask build comma
  • 撤销 IdentityServer4 中特定会话的访问令牌(参考)

    我在用IdentityServer 4带有参考标记的隐式流程 我自己做了一个实现IPersistedGrantStore https github com IdentityServer IdentityServer4 blob releas
  • SVG使用element来克隆SVG

    是否可以在单独的 svg 中 使用 整个其他 svg 我想使用 d3 生成的地图作为同一页面上的图标 这是我尝试过的 但它不起作用