2013-03-11 3 views
0

Je voudrais créer un lien sur une image en cliquant sur le bouton. Ce que j'ai jusqu'ici est, quand je clique sur l'image, j'obtiens les coordonnées correctement .. mais comment puis-je dinamically créer un lien sur la position cliquée de souris? Est-il possible de le faire?Comment créer un lien sur une image en utilisant jQuery

C'est ce que j'ai jusqu'à présent:

$('.ImgMapa').click(function(e) { 
captureMousePosition(e); 
var offset = $(this).offset(); 
var left = xMousePos; 
var top = yMousePos; 
}); 

La captureMousePosition fonction retourne la position X et Y pour moi.

+0

Si vous essayez de créer un lien sur l'image complète? Si Oui, puis simplement l'envelopper avec '' et définir l'attribut href en utilisant jquery – Peeyush

+0

Non .. Créer un lien dans chaque clic de la souris, dans un lieu spécifique de l'image –

Répondre

0
$('.image').click(function(e){ 
e.preventDefault(); 
window.location="http://google.com"; 
}); 
+0

De cette façon je vais créer un lien pour toute l'image, rigth? J'essaie est de créer un lien seulement où je clique à l'intérieur de l'image –

+0

vous pouvez essayer cet outil si vous voulez passer à essayer de le coder à partir de zéro - http://www.maschek.hu/imagemap/imgmap – blackhawk

+0

Nick aussi a une solution alternative ici - http://stackoverflow.com/questions/3379583/using-jquery-to-change-image-map-coord-values?rq=1 – blackhawk

0

Je finis par faire quelque chose de mieux pour mon cas. Comme je voulais créer dynamiquement des images sur un autre, j'ai utilisé la fonction append() de jQuery. Voici ce que je l'ai fait:

a créé une balise img:

var img = $('<img src="http://3.bp.blogspot.com/-BDsYRXImsOQ/T-czORDNXZI/AAAAAAAABz4/qjWlHzzEBsA/s1600/1606gdg.png"/>'); 

Définissez sa css en conséquence à la position de clic de souris:

img.css('cssText', 'top: ' + (top-10) + 'px;' + 'left: ' + (left-10) + 'px; position: absolute; width: 22px; height: 22px'); 

et enfin l'ajouter avec les parents d'image:

$(this).parent().append(icone); 

Où $ (this) est ma référence d'image.

Note 1: Mon image est à l'intérieur et div, c'est pourquoi j'ai utilisé la fonction parent(). Note 2: Tous ces morceaux de code sont dans mon événement click image.

Exemple:

$('.Img').click(function(e) { 

} 

Hope it helps! :)

Questions connexes