Comment obtenir le code SVG à partir de la page html, à l'aide de jQuery ou JavaScript?
J'ai simple page HTML avec svg comme ceci:
<div id="plan">
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<g id="layer3">
<rect width="105.71429" height="80" x="351.42856" y="152.36218" id="rect1" style="fill:#008000"></rect>
<rect width="120" height="85.714287" x="500" y="389.50504" id="rect2" style="fill:#008000"></rect>
</g>
</svg>
</div>
Comment je peux obtenir de la chaîne:
<rect width="105.71429" height="80" x="351.42856" y="152.36218" id="rect1" style="fill:#008000"></rect>
à partir de ce fichier svg. Je peux utiliser jquery et jquery svg. J'ai essayer:
$(document).ready(function() {
console.log($("#plan #rect1")[0]);
})
Dans la console je profite de cette chaîne, mais il me faut de la chaîne dans une variable comme ceci:
var str = $("#plan #rect1")[0];
variable str est [objet SVGRectElement]
[enter description du lien ici]Un
Vous devez vous connecter pour publier un commentaire.
Cela devrait aider. Si vous souhaitez accéder à la balise au lieu de jQuery élément, utilisez [] pour obtenir encapsulé élément.
Modifier :
Cela devrait faire l'affaire pour vous.
La solution expliqué, c'est pour envelopper votre sélection dans un autre tag et d'appel .html() pour afficher son contenu.
N'oubliez pas la .clone() l'appel avant d'ajouter dans votre temp div, sinon vous allez avoir des problèmes dans votre code html 🙂
De combiner les réponses précédentes (qui ne sont pas claires pour moi au début) le moyen d'obtenir la chaîne SVG est la suivante: