Je veux dessiner des cercles sur des caractères que j'ai donnés un élément de travée. Je l'ai déjà travaillé avec un élément (voir le code commenté). Je veux seulement le faire par chaque élément de portée. Pour commencer, j'ai d'abord essayé de le faire avec un vol stationnaire mais j'ai déjà échoué à cela. Instand d'un hover il devrait juste arriver quand le draw de fonction est appelé.dessiner des cercles sur chaque élément de travée
function draw() {
ctx.save();
ctx.translate(plotX1, 0);
$("p").find("span").hover(function(){
console.log("hover");
var x = $(this).offsetLeft;
var y = $(this).offsetTop;
y += $(this).offsetHeight;
ellipse(ctx, x, y, 10);
ctx.strokeStyle = "rgba(200, 0, 0, 50)";
ctx.stroke();
});
ctx.restore();
/*
// this worked on the element with id s2
var x = s2.offsetLeft;
var y = s2.offsetTop;
y += s2.offsetHeight;
ctx.fillStyle = "rgb(0, 250, 0)";
//ctx.fillRect(x, y, 10, 10);
ellipse(ctx, x, y, 10);
ctx.strokeStyle = "rgba(200, 0, 0, 50)";
ctx.stroke();
*/
}
avec votre pièce de code je ne vois rien. Peut-être parce que la toile est sur toute la page (je ne peux pas non plus sélectionner de texte). Que la toile soit sur toute la page doit rester comme ça. à quoi sert cette ligne? $ ('# canv'). Attr ('largeur', $ ('p'). Width()). Attr ('hauteur', $ ('p'). Hauteur()); – clankill3r
'$ ('# canv'). Attr ('largeur', $ ('p'). Width()). Attr ('hauteur', $ ('p'). Height());' définit la toile taille à la même taille que le paragraphe. Je ne vois pas ce que vous voyez, en utilisant Chrome, les cercles apparaissent et je peux sélectionner le texte. Obtenir des résultats différents dans Firefox, peut sélectionner le texte, mais un seul cercle apparaît sur les travées lorsque je survole sur eux. – MikeM
J'ai connecté x et y à la console, x est indéfini et y est nan. – clankill3r