我想在联系人标题文字上使用悬停。我希望显示的内容也跟随光标。 我用我的悬停做了一个jsfiddle,但我不知道为什么不工作......
<div class="toggleSwitch_j">
<a href="#"> Contact Title </a>
<div class="SignatureBox">Text Displayed</div>
</div>
.SignatureBox {
display: none;
width: 200px;
height: 30px;
background-color: #F9F7F7;
border: 1px solid #e4e4e4;
}
$(document).ready(function() {
$('.SignatureBox').hide();
$('.toggleSwitch_j').hover(function () {
$(this).children('.SignatureBox').show();
}, function () {
$(this).children('.SignatureBox').hide();
});
});
答案 0 :(得分:2)
您可以将pageX和pageY与.offset()函数
一起使用$(this).children('.SignatureBox').show().offset({left: e.pageX, top: e.pageY});
整个代码:
$(document).ready(function() {
$('.SignatureBox').hide();
$('.toggleSwitch_j').hover(function (e) {
$(this).children('.SignatureBox').show().offset({left: e.pageX, top: e.pageY});
}, function () {
$(this).children('.SignatureBox').hide();
});
});
答案 1 :(得分:1)
你甚至不需要javascript,但你的例子中的问题是你没有加载jQuery。你可以从JSFiddle的左上角导航中做到这一点。
这是JSFiddle中仅使用CSS的示例:JSFiddle
HTML:
<div class="wrapper">
<span>Visible Content (Hover Me)</span>
<span class="hidden-content">Hidden Content (Visible when hovered)</span>
</div>
CSS:
.wrapper {
position: relative;
}
.hidden-content {
display: none;
position: absolute;
}
.wrapper:hover .hidden-content {
display: block;
}
JS:
$(function() {
$(".wrapper").hover(function (e) {
var parentOffset = $(this).parent().offset();
var relX = e.pageX - parentOffset.left;
$(".hidden-content").css("left", relX);
});
});
答案 2 :(得分:0)
这是一种使用CSS
的简单方法HTML
<div id="wrapper">
LINK
<p class="text">text</p>
</div>
CSS
#wrapper .text {
position:relative;
bottom:10px;
left:0px;
visibility:hidden;
}
#wrapper:hover .text {
visibility:visible;
}
答案 3 :(得分:0)
您应该加载jQuery以使用jQuery hover
函数。
在左框架面板中选择jQuery 1.x库。
答案 4 :(得分:0)
试试这个:(http://jsfiddle.net/u3pW8/23/)
还在左侧栏上加载jquery。我在脚本中做了一些更改。
答案 5 :(得分:0)
我为你的第二个查询设置了一个jsfilddle。
请参阅this小提示光标后显示的文字
<强> JS:强>
$(document).ready(function() {
$('.SignatureBox').hide();
$('.toggleSwitch_j').hover(function () {
$(this).children('.SignatureBox').show();
//attach the mousemove event
$(window).bind('mousemove mouseover', function(evt) {
$(".SignatureBox").offset({left:evt.pageX, top: evt.pageY});
});
}, function () {
$(this).children('.SignatureBox').hide();
});
});
答案 6 :(得分:0)
尝试完整的css3:
.toggleSwitch_j{
pointer: cursor;
}
.toggleSwitch_j:hover > .SignatureBox {
display: block;
width: 200px;
height: 30px;
background-color: #F9F7F7;
border: 1px solid #e4e4e4;
}
.SignatureBox {
display: none;
}
&gt;指示符表示第一个元素上的悬停在第二个元素上生成(如果第二个元素在第一个元素内部)。