10
votes

Comment appliquer des styles CSS aux objets RAPHAEL.JS en utilisant jQuery?

Quelqu'un a-t-il une expérience avec la bibliothèque RAPHAEL.JS SVG?

J'utilise raphael.js pour créer une carte SVG (pour une utilisation sur les smartphones), mais j'ai du mal à ouvrir les objets de carte que Raphaël crée jusqu'à l'interaction extérieure par JQuery et Styling par CSS. P>

.highlight { background-color: #f00; }


1 commentaires

J'aime la bibliothèque Raphael. J'ai été particulièrement impressionné par la qualité de laquelle cela pourrait s'intégrer à JQuery.


3 Réponses :


10
votes

Je ne suis pas exactement sûr que ce que vous codissez, mais si vous souhaitez obtenir un objet JQuery à partir d'un objet Raphael, faites ceci: xxx pré>

de là, vous pouvez utiliser jQuery to Ajouter une classe: p>

$jQueryObject.addClass('highlight');


5 commentaires

Merci qui a fonctionné super (fixer le CSS, mais ne pas ajouter la classe). J'apprécie l'aide.


Et oui, je ne suis pas vraiment sûr de ce que mon code fait soit :)


Eh bien attr est une carte des attributs Raphael non des propriétés CSS et doit être appliqué à un objet RAPHAEL à l'aide de attr . Une fois que vous avez un objet JQuery AddClass devrait certainement fonctionner.


HRM, donc il semble que je ne puisse pas définir correctement l'objet JQuery, alors mon code a toujours référencé o.node.id = "o" + $ (this) .attr ("id"); En tant que valeur ID de nœud que j'ai définie, c'est pourquoi $ cible.css (attrsses); fonctionnait mais $ cible.addclass ("Might"); n'était pas. Je vais le chercher. Merci.


Pouvez-vous s'il vous plaît nous fournir un exemple? Merci d'avance.



6
votes

J'ai également constaté que si vous retirez les styles en ligne après avoir rendu le chemin avec Raphaël.

#somediv path { fill: white; }
#somediv:hover path { fill: blue; }


0 commentaires

3
votes

ou vous ajoutez une classe sous forme d'attribut xxx

ceci fonctionnera au lieu de xxx


0 commentaires