0
我使用svg.js在HTML文檔中創建SVG圖像。但是,我想添加一些不是由svg.js創建的元素,而是添加一些其他代碼。我知道有一種採用SVG源並添加它的.svg()
方法,但我有實際的DOM元素,它已經是SVG的一部分。有沒有辦法讓這個DOM元素得到一個svg.js對象?生成不是由svg.js創建的(SVG)DOM節點的svg.js對象
我使用svg.js在HTML文檔中創建SVG圖像。但是,我想添加一些不是由svg.js創建的元素,而是添加一些其他代碼。我知道有一種採用SVG源並添加它的.svg()
方法,但我有實際的DOM元素,它已經是SVG的一部分。有沒有辦法讓這個DOM元素得到一個svg.js對象?生成不是由svg.js創建的(SVG)DOM節點的svg.js對象
您在搜索的是SVG.adopt()
方法,它接受一個節點並返回一個SVG.js對象。
您也可以使用SVG.select()
方法,該方法使用CSS選擇器並返回一組SVG.js元素。因爲它是一個集合(排序的數組),所以你需要得到第一個元素SVG.select(something).get(0)
我在'2.3.2'找不到'SVG.adopt()'。文檔中提到了一個名爲['absorb']的擴展(https://github.com/svgdotjs/svg.absorb.js),但是這個擴展名現在已經包含在'svg.js'中。 'SVG.select()'工作。謝謝! – burnpanck
''2.0.0'包含'SVG.adopt',而'absorb'已被棄用(僅對svg.js v1.x.x有用)。文檔中沒有提到'採用',因爲獲取元素的通常方法是使用'SVG.select'。但是:特別是對於有節點的情況,它完全適合 – Fuzzyma