[Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Version imprimable +- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org) +-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38) +--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51) +--- Sujet : [Javascript] JQuery leave ne réagit pas comme je veux sur un svg (/showthread.php?tid=7340) |
RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Xenos - 09-04-2015 Tu peux pas, si le problème est vraiment le tag SVG, imbriquer le SVG dans une div qui fait exactement la taille de ce SVG, et poser l'évènement sur cette div (puisque, apparemment, tu veux juste savoir si on sort du SVG, pas si on sort d'un élément dans le SVG)? Un peu comme l'indiquait niahoo, mais sans chercher à savoir si le relatedTarget est le svg ou non? Après, pour la div qui fait "pile la taille du svg", là comme ça, je dirai que display: inline-block; devrait aller. RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Ter Rowan - 09-04-2015 maintenant je n'ai plus le souci avec l'événement, mon problème est la manipulation des attributs du svg (ici viewbox) qui marche très bien avec la 1.6 et pas avec la 2.x RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Xenos - 09-04-2015 Donc, si j'ai compris, $("svg").attr("viewBox", "0 0 100 100"); ne marche pas si viewBox n'a pas été précédemment définit dans le code HTML? Parce que .attr(), sans argument, c'est la lecture de la valeur de l'attribut (donc, que ce soit passé d'une chaine vide à undefined, pourquoi pas) RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - niahoo - 10-04-2015 mais comme visiblement il bug, l'utiliser à tout prix n'est pas forcément la bonne démarche. bref, popr ton attribut, est-ce que jquery 2 respecte la casse sur ton attribut ? RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Ter Rowan - 12-04-2015 (10-04-2015, 08:44 AM)niahoo a écrit : mais comme visiblement il bug, l'utiliser à tout prix n'est pas forcément la bonne démarche. bref, popr ton attribut, est-ce que jquery 2 respecte la casse sur ton attribut ? certes, si ce n'est que la seule chose qui me gène aujourd'hui dans la 1.6 est que je dois rajouter :
Et encore, le fonctionnement de la 1.6 qui me gène n'est pas forcément un bug (je ne connais pas la spec la dessus) puisque le fonctionnement fait hériter l'événement du on(leave) aux enfants de ma zone sélectionnée tout le reste (que j'utilise) fonctionne correctement la question est alors, sachant qu'il n'y a pas de problème de sécurité (code client sans impact sur les autres) que je n'ai aucun bug sur tout le reste de mon code, et que je n'arrive pas à utiliser jquery 2 sans avoir a revoir tout mon js orienté svg quel est l'intérêt de monter de version, le mieux me semble ici l'ennemi du bien. Si jamais je me retrouve face à un mur alors je ferais l'effort, mais là je préfère avancer sur le contenu. Ca m'étonnerait que j'en arrive à cette extrêmité, vu que mon proto actuel est justement le dernier code complexe qui nécessite du jquery, après je n'aurais plus que du knock out à gérer côté client et je ne sais pas si jquery est sensible à la casse, perso, sauf erreur, je respecte la casse pour des questions d'esthétique RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Ter Rowan - 12-04-2015 (09-04-2015, 08:17 PM)Xenos a écrit : Donc, si j'ai compris, $("svg").attr("viewBox", "0 0 100 100"); ne marche pas si viewBox n'a pas été précédemment définit dans le code HTML? non dans le html il était défini là le sujet c'est que le attr("viewBox") ne marchait pas si il n'y avait pas avant de attr("viewBox", "0 0 1 1"); et encore je n'arrive pas à mettre les valeurs (alors que le même code en jquery 1.6) marche completement RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - niahoo - 12-04-2015 non mais est-ce que quand tu set la viewBox jQ set la viewbox ? RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Ter Rowan - 12-04-2015 (12-04-2015, 01:46 PM)niahoo a écrit : non mais est-ce que quand tu set la viewBox jQ set la viewbox ? je viens de faire le test, en JQ 2.1, avec B ou avec b la viewBox n'est pas settée (ou resettée) en JQ 1.6, avec le B ça marche, avec le b, ça ne marche pas à noter que en JQ 2.1 , le reste du code (changement de classe css) marche correctement, donc le code tourne bien, c'est juste l'instruction qui ne passe pas. La voilà in extenso :
mais... je viens de trouver, tu avais raison le sujet est bien la majuscule du B: bien que je mette viewBox, firebug me dit que jquery 2.1 set l'attribut viewbox extract firebug : <svg viewBox="30 20 400 400" viewbox="30 20 40 400"> viewBox correspond à mon code html inline de départ viewbox correspond à l'ordre jquery 2.1 il y a donc un bug sur la 2.1 à ce sujet (où bien je n'ai rien compris) RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - niahoo - 15-04-2015 Zut j'avais raté ta réponse. Ce n'est pas considéré comme un bug je crois. il te faut faire
RE: [Javascript] JQuery leave ne réagit pas comme je veux sur un svg - Ter Rowan - 21-04-2015 tu as raison, quand j'utilise le sélecteur "#map svg" c'est bien un tableau qu'il me renvoie, et je devrais mettre un [0], j'avais fait une erreur là dessus, et encore après tout ca voudrait dire que je demande à jquery d'appliquer à toute ma sélection les modifications si je ne mets pas [0] par contre quand je sélectionne via un id (genre "#zzmap") il ne me renvoie qu'un objet cependant dans les deux cas, le comportement résultat est le même : il modifie un autre attribut que viewBox a savoir viewbox |