jquery - 带有自定义弹出窗口的响应式图像映射
问题描述
我有一个响应式图像地图,当区域悬停时我需要显示弹出窗口。我不能在每个区域使用标题标签,因为我希望能够显示 html 内容。
我在这里创建了一个示例 - 它有点工作,但并非始终如一。不知何故,当您第一次将鼠标悬停在弹出窗口出现的区域时,但其他时候却没有。
我希望有人可以帮助我稳定脚本。
脚本:
// imageMapResize() comes from an external ressource
$('map').imageMapResize();
createHover();
function createHover() {
$('area').each(function(i) {
$('area').eq(i).bind('mouseover mousemove', function(e) {
$('.one,.two,.three,.four').eq(i).css({
"top": e.pageY - $('.popup').offset().top + 300,
"left": e.pageX - $('.popup').offset().left - 100
}).addClass('in');
})
$('area').eq(i).bind('mouseout', function() {
$('.one,.two,.three,.four').removeClass('in');
});
});
}
//On resize, wait and reload function
var it;
window.onresize = function() {
clearTimeout(it);
it = setTimeout(function() {
createHover();
}, 200);
};
html:
<img src="https://i.paste.pics/c12eb9a681af68d0bcab2af25d09f5ab.png" usemap="#image-map">
<map name="image-map">
<area coords="7,2,118,3,118,121,3,123" shape="poly">
<area coords="136,4,135,117,250,123,251,10" shape="poly">
<area coords="4,136,125,136,125,253,4,253" shape="poly">
<area coords="136,138,256,137,256,252,134,254" shape="poly">
</map>
<!-- Popups -->
<div class="msg one" role="tooltip">
<div class="msg-arrow"></div>
<div class="msg-inner">
Content 1
</div>
</div>
<div class="msg two" role="tooltip">
<div class="msg-arrow"></div>
<div class="msg-inner">
Content 2
</div>
</div>
<div class="msg three" role="tooltip">
<div class="msg-arrow"></div>
<div class="msg-inner">
Content 3
</div>
</div>
<div class="msg four" role="tooltip">
<div class="msg-arrow"></div>
<div class="msg-inner">
Content 4
</div>
</div>
<div class="popup"></div>
解决方案
推荐阅读
- reactjs - TypeError 无法读取未定义的属性“baseTheme”
- google-maps - Flutter 的 flutter_google_map_view 小部件中的集群标记
- python - Fill empty enclosed parts from image
- database - 如何同步两个 docker 卷?
- python - 如果生效日期 > 日期范围,则返回 0
- javascript - 我可以在 NestJS 的打字稿接口上使用验证装饰器吗?
- square-connect - 导出订单信息
- python - 如何转换 subprocess.Popen() 返回的字符串的编码?
- python - 如何将原始 SQL 转换为 SQLAlchemy ORM
- julia - 如何在 Julia 中将字符串视为数组/向量