J'essaie d'obtenir la propriété innerSVG
valeur et attraper undefined
. InnerSVG est vide pour l'élément SVG dans IE11
Vous ne trouvez pas plaisir de contenu consoler, je l'ai utilisé jQuery('#main_svg')[0].innerSVG
J'essaie d'obtenir la propriété innerSVG
valeur et attraper undefined
. InnerSVG est vide pour l'élément SVG dans IE11
Vous ne trouvez pas plaisir de contenu consoler, je l'ai utilisé jQuery('#main_svg')[0].innerSVG
Il n'y a pas de propriété innerSVG dans toute norme. Selon DOM Parsing and Serialization specElement.innerHTML
devrait fonctionner aussi pour SVG ou autre contenu XML.
En 2009, une bibliothèque innnerSVG a été publié à
fournir la propriété innerHTML sur tous SVGElements
Ce qui semble, à ce moment-là, ne fonctionne pas dans tous les navigateurs. Il contient sa propre implémentation d'un sérialiseur XML. Les nombreux commentaires TODO
dans le code source semblent indiquer qu'il est assez incomplet.
Depuis Internet Explorer 9, il n'est plus vraiment nécessaire, car il existe un support pour XMLSerializer
. Alors que IE 11 semble avoir un bug et que cela ne fonctionnera pas pour retourner le contenu innerHTML
,:
function getInnerHTML (el) {
if (el.innerHTML === undefined) {
var XMLS = new XMLSerializer();
var nodes = [];
for (var i = 0; i < el.childNodes.length; i++) {
nodes.push(XMLS.serializeToString(el.childNodes[i]));
}
return nodes.join('');
} else {
return el.innerHTML;
}
}
j'ai besoin de remplacer la structure svg intérieure en ie, que dois-je faire? dans d'autres navigateurs j'utilise 'svg.innerHTML = someXML;' –
Je ne l'ai pas testé, mais [cette fonction] (https://github.com/dnozay/innersvg-polyfill/blob/master/innersvg.js# L61) est supposé fonctionner. – ccprog
Avez-vous avez chargé la [Bibliothèque] (https://code.google.com/archive/p/innersvg /)? – ccprog
Qu'est-ce que j'ai besoin de la bibliothèque? –
Il n'existe aucune propriété innerSVG dans aucune norme. C'est une invention de cette bibliothèque de porter le contenu innerHTML au format SVG. Donc, soit utilisez cette bibliothèque, soit [Snap.svg] (http://snapsvg.io/docs/#Element.innerSVG), qui a une fonction innerSVG(), ou ne l'utilisez pas du tout. – ccprog