首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当鼠标移到链接上时,如何在链接旁边创建弹出框?

当鼠标移到链接上时,如何在链接旁边创建弹出框?
EN

Stack Overflow用户
提问于 2012-05-15 00:03:44
回答 2查看 50.1K关注 0票数 8

下面是我想要实现的:

我的网页上显示了两个超链接:

代码语言:javascript
运行
复制
<a href="http://foo.com"> foo </a>

<a href="http://bar.com"> bar </a>

我还有两个链接描述为div:

代码语言:javascript
运行
复制
<div id="foo">foo means foo</div>

<div id="bar">bar means bar</div>

现在,当我将鼠标移到foo的链接上时,应该会弹出相应的描述div,并且应该会在光标所在的位置旁边弹出。

因此,如果我将鼠标放在"foo“上,一个包含"foo意思是foo”的弹出框应该会出现在鼠标光标的旁边。同样的情况也适用于"bar“。

请使用javascript/jquery、CSS或它们的组合,展示一种快速而简单的实现方法。

另外,我为之前没有解释清楚而道歉,我实际上想在描述div中添加更多的链接或图像,而不是纯文本,所以常规的工具提示可能不能做到。

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-15 00:16:41

这是最简单的解决方案。

HTML:

代码语言:javascript
运行
复制
<a href="http://foo.com" data-tooltip="#foo">foo</a>
<a href="http://bar.com" data-tooltip="#bar">bar</a>

<div id="foo">foo means foo</div>
<div id="bar">bar means bar</div>

CSS:

代码语言:javascript
运行
复制
div {
    position: absolute;
    display: none;
    ...
}​

JavaScript:

代码语言:javascript
运行
复制
$("a").hover(function(e) {
    $($(this).data("tooltip")).css({
        left: e.pageX + 1,
        top: e.pageY + 1
    }).stop().show(100);
}, function() {
    $($(this).data("tooltip")).hide();
});

代码语言:javascript
运行
复制
$("a").hover(function(e) {
  $($(this).data("tooltip")).css({
    left: e.pageX + 1,
    top: e.pageY + 1
  }).stop().show(100);
}, function() {
  $($(this).data("tooltip")).hide();
});
代码语言:javascript
运行
复制
div {
  position: absolute;
  display: none;
  border: 1px solid green;
  padding:5px 15px;
  border-radius: 15px;
  background-color: lavender;
}
代码语言:javascript
运行
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>

<a href="http://foo.com" data-tooltip="#foo">foo</a>
<a href="http://bar.com" data-tooltip="#bar">bar</a>

<div id="foo">foo means foo</div>
<div id="bar">bar means bar</div>

http://jsfiddle.net/8UkHn/演示:

票数 15
EN

Stack Overflow用户

发布于 2012-05-15 00:08:44

您是否考虑过在这种情况下使用"title“属性?

代码语言:javascript
运行
复制
<a href="http://foo.com" title="foo means foo"> foo </a>

看看这是否适合你的需要。

它的作用是,当您将鼠标移到链接"foo“上时,一个包含"foo意思是foo”的小方框将出现在鼠标指针旁边。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10586962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档