javascript - 在灯箱中的图像上添加热点链接

标签 javascript jquery lightbox

我偶然发现这个问题有一段时间了,经过几周的研究,我觉得在这里寻求帮助是安全的。

我想做的是这样的:用户单击图像>灯箱显示更大的图像>更大的图像有一个带有指向另一个页面的链接的热点。

这可能吗?这看起来很简单,但我似乎无法让它发挥作用。这是引用代码。

<a href="images/createaccount_img.jpg" rel="lightbox" usemap="#Map" map name="Map" id="Map"><area shape="rect" coords="323,205,567,361" href="URL LINK 1" target="_blank" /><area shape="rect" coords="995,613,1191,668" href="URL LINK 2" target="_blank" > <img src="images/panel_login_11.jpg" width="152" height="27" alt="" />

解决方案:最好的选择是使用 http://fancybox.net/它允许您在框中添加许多额外的元素,包括:Div、iframe、html 等等!再次感谢大家。

最佳答案

首先:map是一个单独的标签。所以你的代码永远不会工作。
这就是您通常使用 map 的方式:

<a href="images/createaccount_img.jpg" rel="lightbox">
  <img src="images/panel_login_11.jpg" width="152" height="27" alt="" usemap="#map" />
</a>

<map name="map" id="map">
    <area shape="rect" coords="323,205,567,361" href="URL LINK 1" target="_blank" />
    <area shape="rect" coords="995,613,1191,668" href="URL LINK 2" target="_blank" > 
</map>

话虽这么说,然后我想在包含全尺寸图像的 url 的链接上放置一个属性 data-usemap。像这样:

<a href="http://lokeshdhakar.com/projects/lightbox2/images/examples/image-1.jpg" rel="lightbox" data-usemap="#map"><img src="http://lokeshdhakar.com/projects/lightbox2/images/examples/thumb-1.jpg" alt=""></a>

然后我修改了 lightbox.js 以读取此属性 usemap: $link.attr('data-usemap') 并设置该属性 $image。 attr('usemap', _this.album[imageNumber].usemap);

现在全尺寸图像具有正确的使用 map 集
但它仍然不起作用!我认为这是因为 div 覆盖在该图像上。
这是fiddle我已经努力了。搜索 //xxx added 以找到我添加的 2 行。也许其他人可以做更多的工作。

换句话说,我认为在未经修改的 lightbox.js 上创建 mod 并不容易。

A 还想指出,像 lightbox 这样的许多脚本也会调整全尺寸图像的大小以适合屏幕(据我所知,lightbox 不会这样做):那么您还需要 javascript 来重新计算我猜是 map 上的坐标。

关于javascript - 在灯箱中的图像上添加热点链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12064472/

相关文章:

javascript - 无法读取 JSON 文件

jquery - 如何获取下载图片的完整路径?

javascript - 单击链接后 jQuery 音频停止

javascript - 用于显示图像的简单 jquery 灯箱

html - 不要与灯箱中的图像垂直对齐

javascript - 刷新/重新加载 angularjs 自定义指令

javascript - 如何在 jQuery 动画中连续旋转子项?

javascript - 在 for-in 循环中对特定数组属性使用 JS Array.Reduce

javascript - 如果当前状态 !== 'FINISH',则使用 ConditionExpression 仅更新状态

javascript - 值属性似乎不显示输入字段内容