我对JavaScript还不是很熟悉,所以我认为这是一个容易解决的问题,请耐心等待。
在我的网站上,我加入了一个基于jQuery的提示框,它会跟随鼠标移动。但由于它是我在线找到的工具,所以我遇到了一些故障排除问题。我想让提示框跟随鼠标移动,直到碰到页面的边缘为止;当它碰到边缘时,我想让它执行类似collision: "flip"的操作。我基本上明白为什么我的尝试没有成功。我只知道如何使它只跟随鼠标或只使用.position()。我不知道如何将两者合并到一个脚本中,而不会弄乱其他所有东西。
以下是开发者网站上提供的脚本:
在我的网站上,我加入了一个基于jQuery的提示框,它会跟随鼠标移动。但由于它是我在线找到的工具,所以我遇到了一些故障排除问题。我想让提示框跟随鼠标移动,直到碰到页面的边缘为止;当它碰到边缘时,我想让它执行类似collision: "flip"的操作。我基本上明白为什么我的尝试没有成功。我只知道如何使它只跟随鼠标或只使用.position()。我不知道如何将两者合并到一个脚本中,而不会弄乱其他所有东西。
以下是开发者网站上提供的脚本:
<script type="text/javascript">
$(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组件。就我所知,这并不涉及到问题,但以防万一,就是这样。
.tooltip {
display:none;
position:absolute;
border:1px solid #333;
background-color:#161616;
border-radius:5px;
padding:10px;
color: #fff;
font-size:12px;
width: 200px;
}
非常抱歉,如果这是一个非常密集的问题,但我一整天都在尝试弄清楚这个问题,到现在为止我已经放弃了。
再次强调,我的要求是让工具提示跟随鼠标移动,就像它目前所做的那样 - 但不是无限期地。当跟随鼠标移动会导致工具提示与窗口发生碰撞,创建滚动条时,我希望它出现在鼠标的另一侧,或者随着鼠标靠近窗口边缘而保持静态。 无论如何,请确保工具提示中的内容始终可见,无论鼠标移动到哪里。
谢谢!