クロム拡張機能で、SVGスプライトを表示しようとしていますが、コンテンツを表示していません。私はコンソールにエラーが表示されず、ローカルとオンラインの両方を試しました。私はまた、無駄にIMGタグを使用してみました。私が見つけたその他のアドバイスはすべて、形の構築について語っています。クロム拡張子にSVGスプライトを動的に追加します。
var svg = div.appendChild(document.createElement("svg"));
svg .classList.add("actionButtonImage");
var use = svg.appendChild(document.createElement("use"));
use .setAttribute("xmlns:xlink"," http://www.w3.org/1999/xlink");
use .setAttribute("xlink:href", href);
編集:私はページ内のベクトルを作るために見ているわけではない、私は外部のSVGスプライトを使用しています!そして、これを研究する日と半分をspenしてください!
これまでのところ私は、あなたがのcreateElementとSVG要素を作成することはできません、あなたははcreateElementNSを必要とSVG namespaceを提供するために、無駄
var svg = div.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg"));
svg .classList.add("actionButtonImage");
var use = svg.appendChild(document.createElementNS("http://www.w3.org/1999/xlink", "use" ));
use .setAttributeNS("http://www.w3.org/1999/xlink","href",href);
imgタグを作成して、srcがsvgソースとして参照できるようにすることができます。また、拡張子 – andrew196
に追加する必要があります。[HTML内のjavascriptで動的にSVG要素を作成する](http://stackoverflow.com/questions/20539196/creating-svg-elements-dynamically-with-javascript-inside -html) – Makyen
useはxlink名前空間の要素ではなく、svg名前空間にあります。 href属性はxlink名前空間にありますが(そのビットが正しいです)。 –