4
DOM中已經包含空SVG標籤(「SVG」),當我試圖將現有的SVG符號(「符號」)的使用標籤dinamically追加一個ID(「iconId」):SVG與使用無標籤不渲染
svg.empty();
svg[0].setAttribute('viewBox', symbol.getAttribute('viewBox'));
svg.append('<use xlink:href="#' + iconId + '"></use>');
element.html(element.html());
或手動操縱viewBox屬性,但是這不是一個真正的解決方案和IE不喜歡它。 值得一提的是,如果我直接附加SVG圖形,該元素將呈現。
這裏發生了什麼,爲什麼在追加USE標籤之後不是SVG繪圖?
我只能猜測,但:它可能是使用標記呈現之前,svg加載? (不包括它之前,但實際加載) – DoXicK 2014-09-22 13:44:43
可能附加將數據粘在html命名空間而不是SVG命名空間。 – 2014-09-22 13:46:39
@DoXicK - 不,SVG和符號都在頁面中硬編碼。腳本在DOMContentLoaded之後運行。 – 2014-09-22 13:51:37