gpt4 book ai didi

javascript - 定位工具提示

转载 作者:行者123 更新时间:2023-11-29 10:25:40 24 4
gpt4 key购买 nike

我正在尝试使用名为 EasyTooltip 的 jquery 插件使我的工具提示在光标的左侧而不是右侧弹出。

我试图在 header 的调用中给出一个负值,目的是影响 x 轴定位,但没有任何效果(什么都没有出现,而两个轴上的正值通常都有效):

<script type="text/javascript">
$(document).ready(function() {

$(".middle img").easyTooltip({
tooltipId: "easyTooltip2",
xOffset: -300,
yOffset: 50
});
});
</script>

我是 javascript 的新手,我认为我必须修改脚本,但我需要您的建议。这是脚本:

/*
* Easy Tooltip 1.0 - jQuery plugin
* written by Alen Grakalic
* http://cssglobe.com/post/4380/easy-tooltip--jquery-plugin
*
* Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
* Dual licensed under the MIT (MIT-LICENSE.txt)
* and GPL (GPL-LICENSE.txt) licenses.
*
* Built for jQuery library
* http://jquery.com
*
*/

(function($) {

$.fn.easyTooltip = function(options){

// default configuration properties
var defaults = {
xOffset: 10,
yOffset: 20,
tooltipId: "easyTooltip",
clickRemove: false,
content: "",
useElement: ""
};

var options = $.extend(defaults, options);
var content;

this.each(function() {
var title = $(this).attr("title");
$(this).hover(function(e){
content = (options.content != "") ? options.content : title;
content = (options.useElement != "") ? $("#" + options.useElement).html() : content;
$(this).attr("title","");
if (content != "" && content != undefined){
$("body").append("<div id='"+ options.tooltipId +"'>"+ content +"</div>");
$("#" + options.tooltipId)
.css("position","absolute")
.css("top",(e.pageY - options.yOffset) + "px")
.css("left",(e.pageX + options.xOffset) + "px")
.css("display","none")
.fadeIn("fast")
}
},
function(){
$("#" + options.tooltipId).remove();
$(this).attr("title",title);
});
$(this).mousemove(function(e){
$("#" + options.tooltipId)
.css("top",(e.pageY - options.yOffset) + "px")
.css("left",(e.pageX + options.xOffset) + "px")
});
if(options.clickRemove){
$(this).mousedown(function(e){
$("#" + options.tooltipId).remove();
$(this).attr("title",title);
});
}
});

};

})(jQuery);

非常感谢任何输入。干杯,

最佳答案

实际上,仅使用 -200 之类的值即可修复工具提示的左侧,但当您拥有更多工具提示内容时,就会开始引发问题。因此,更好的方法是确定工具提示的宽度和内容,然后调整大小(这里是 demo )。您必须稍微更改插件和 css:

CSS

#easyTooltip{
padding:5px 10px;
border:1px solid #195fa4;
background:#195fa4 url(bg.gif) repeat-x;
color:#fff;
position: absolute;
top:0;
left: -9999px;
}

脚本:

替换这个:

.css("left",(e.pageX + options.xOffset) + "px")

有了这个(在两个地方)

.css("left",(e.pageX - $('#'+ options.tooltipId).width() - options.xOffset - 20) + "px")

工具提示需要放置在屏幕之外,因为如果您将其设置为 display:none,宽度将返回为零。在脚本中,您从当前鼠标位置减去工具提示的宽度、偏移量和光标宽度 (20) 以定位工具提示。

关于javascript - 定位工具提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1932899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com