我正在尝试找出要添加到此脚本的内容,以防止工具提示超出页面底部的边缘。任何帮助和你的时间非常感谢。
<!-------------SCRIPT---------------->
<script>
$(document).ready(function() {
// Tooltip only Text
$('.masterTooltip').hover(function(){
// Hover over code
var title = $(this).attr('title');
$(this).data('tipText', title).removeAttr('title');
$('<p class="tooltip"></p>')
.text(title)
.appendTo('body')
.fadeIn('slow');
}, function() {
// Hover out code
$(this).attr('title', $(this).data('tipText'));
$('.tooltip').remove();
}).mousemove(function(e) {
var mousex = e.pageX + 20; //Get X coordinates
var mousey = e.pageY + 10; //Get Y coordinates
$('.tooltip')
.css({ top: mousey, left: mousex })
});
});
</script>
<!--------------CSS------------------>
<style>
.tooltip {
display:none;
position:absolute;
border:1px solid #333;
background-color:#161616;
border-radius:5px;
padding:10px;
color:#fff;
font-size:12px Arial;
}
</style>
<!------------------HTML----------------->
<a href="#" title="This will show up in the tooltip" class="masterTooltip">Your Text</a>
<p title="Mouse over the heading above to view the tooltip." class="masterTooltip">Mouse over the heading text above to view it's tooltip.</p>
<img src="image.jpg" class="masterTooltip" title="Tooltip on image" />
答案 0 :(得分:0)
您需要检查页面的高度,如果菜单的高度+(顶部)菜单的Y位置大于此值,则调整菜单的顶部位置。
var boxX = e.pageX;
var boxY = e.pageY;
var menuHeight = $('.tooltip').outerHeight();
var bodyHeight = $('body').height();
if ((boxY + menuHeight) > bodyHeight){
boxY = bodyHeight - menuHeight;
}
$('.tooltip').css({ top: boxY + 'px', left: boxX + 'px' })