我想在鼠标悬停在div上时,只需要一个跟随鼠标的工具提示。我想用这个:
http://flowplayer.org/tools/tooltip/
我有它工作,但是当鼠标指针移动时我无法获得工具提示实际跟随鼠标。我知道这听起来像愚蠢的问题,但他们的网站没有任何这个功能的演示,所以我想知道它是否支持。有谁知道如何使这项工作?感谢您的投入和时间!
答案 0 :(得分:9)
我在他们的网站上找到了this。
我会自己做...只是为了帮助你:
<style>
.item {
position: relative;
width: 100px;
height: 40px;
top: 200px;
left: 400px;
background: #CCC;
}
.item .tooltip {
position: fixed; /** depends on how it handles the e.pageX and e.pageY **/
width: 80px;
height: 30px;
background: #06F;
z-index: 10;
display: none; /**let the tooltip be not visable, when startup **/
}
</style>
<script type="text/javascript">
$(document).ready(function() {
$(".item").mousemove(function(e) {
// put other effects in when moving over the element
// from e you can get the pageX(left position) and pageY(top position)
// im not sure if it was the relative or the absolute position
// i added 10 pxs on the top and left to show the tooltip a bit after
$('.tooltip').css('left', e.pageX + 10)
.css('top', e.pageY + 10)
.css('display', 'block');
// or in a simpler way:
$('.tooltip').css({
left: e.pageX + 10,
top: e.pageY + 10
}).css('display', 'block');
});
$(".item").mouseout(function() {
$('.tooltip').css('display', 'none');
});
});
</script>
<div class="item">
<p>This is my item</p>
<div class="tooltip">Tooltip</div>
</div>
如果我是你自己制作工具提示,但这取决于你想要的东西。
3年后......
当然,现在您应该添加debounce
或throttle
。
答案 1 :(得分:5)
w.r.t。 http://flowplayer.org/tools/demos/tooltip/dynamic.htm,试试
// initialize tooltip
$("#dyna img[title]").tooltip({
// tweak the position
offset: [10, 2],
// use the "slide" effect
effect: 'slide'
// add dynamic plugin with optional configuration for bottom edge
}).dynamic({ bottom: { direction: 'down', bounce: true } })
// Additional code : BEGIN
.mousemove(function(evt) {$(".tooltip").css({
left:(evt.pageX - $.tools.tooltip.conf.offset[1]),
top:(evt.pageY - $.tools.tooltip.conf.offset[0])
});})
// Additional code : END
;
请自行调整定位。 :)
答案 2 :(得分:3)
使用他们网站上的示例,您可以将其转为
<script>
$("#demo img[title]").tooltip();
</script>
进入这个
<script>
$("#demo img[title]").tooltip();
$(".tooltip").css('position','absolute');
$("#demo").mousemove(function(e) {
var x_offset = -100;
var y_offset = -130;
$('.tooltip').css('left', e.pageX + x_offset).css('top', e.pageY + y_offset);
});
</script>
这使用jQuery mousemove event和mouse positioning information。工具提示的CSS position
设置为absolute
,因此它会正确地跟随鼠标。
答案 3 :(得分:2)
我写了一个名为TrackStar的插件,就是这样做的。
答案 4 :(得分:2)