2013-03-11 43 views
0

我想在点击按钮的图像上创建链接。我到目前为止是,当我点击图像,我得到的坐标正确..但我怎样才能dinasically在鼠标点击位置创建一个链接?可以做到吗?如何使用jQuery在图像上创建链接

这是我到目前为止有:

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

功能captureMousePosition返回X和Y位置对我来说。

+0

您是否试图在整个图像上创建一个链接?如果是,那么只需用''包装它并使用jquery设置href属性 – Peeyush 2013-03-11 01:35:52

+0

否..在每个鼠标单击的特定位置创建一个链接图像 – 2013-03-11 01:37:35

回答

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

这样我就会为整个图像创建一个链接,是否可行?我试图创建链接,只有当我点击图像内 – 2013-03-11 01:39:17

+0

你可以尝试这个工具,如果你想跳过尝试从头开始编码 - http://www.maschek.hu/imagemap/imgmap – blackhawk 2013-03-11 01:44:59

+0

尼克也有一个替代解决方案在这里 - http://stackoverflow.com/questions/3379583/using-jquery-to-change-image-map-coord-values?rq=1 – blackhawk 2013-03-11 01:49:41

0

我最终为我的情况做了更好的事情。由于我想动态创建另一个图像,我使用jQuery的append()函数。 这里就是我所做的:

创建了一个img标签:

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

据此设置CSS鼠标点击位置:

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

,最后用图像母公司追加它:

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

其中$(this)是我的图像参考。

注意1:我的图像是内部和div,这就是为什么我使用parent()函数。 注2:所有这些代码都在我的图像点击事件中。

例子:

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

} 

希望它能帮助! :)