JQuery - 保持工具提示在视图中
我似乎能够垂直实现这一点,但我似乎无法使水平翻转工作。
$("a.tooltip").mousemove(function(e) {
//$("#tooltip")
//.css("top",(e.pageY - xOffset) + "px")
//.css("left",(e.pageX + yOffset) + "px");
var posY;
var posX;
// Flip Tooltip Vertically
if (e.pageY - $(window).scrollTop() + $('#tooltip').height() >= $(window).height() ) {
posY = $(window).height() + $(window).scrollTop() - $('#tooltip').height() - 20 ;
} else {
posY = e.pageY - 20;
}
// Flip Horizontally?
if (e.pageX - $(window).scrollLeft() + $('#tooltip').width() >= $(window).width() ) {
posX = $(window).width() + $(window).scrollTop() - $('#tooltip').width() - 20 ;
} else {
posX = e.pageX - 20;
}
$("#tooltip")
.css("top",(posY) + "px")
.css("left",(posX) + "px");
});
I seem to have been able to achieve this vertically but I can't seem to get the horizontal flip to work.
$("a.tooltip").mousemove(function(e) {
//$("#tooltip")
//.css("top",(e.pageY - xOffset) + "px")
//.css("left",(e.pageX + yOffset) + "px");
var posY;
var posX;
// Flip Tooltip Vertically
if (e.pageY - $(window).scrollTop() + $('#tooltip').height() >= $(window).height() ) {
posY = $(window).height() + $(window).scrollTop() - $('#tooltip').height() - 20 ;
} else {
posY = e.pageY - 20;
}
// Flip Horizontally?
if (e.pageX - $(window).scrollLeft() + $('#tooltip').width() >= $(window).width() ) {
posX = $(window).width() + $(window).scrollTop() - $('#tooltip').width() - 20 ;
} else {
posX = e.pageX - 20;
}
$("#tooltip")
.css("top",(posY) + "px")
.css("left",(posX) + "px");
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我并没有真正遵循您的代码,但这里是另一个项目的片段,可能会有所帮助。您可以调整 x、y 和 limitY 的值,使其适合您的设计。
I'm not really following your code, but here is a snippet from another project that might be of help. You can adjust the values of x, y and limitY so it fits your design.