javascript - JQuery 工具提示位置

标签 javascript jquery html css tooltip

我一直在研究一个简单的工具提示(请参阅下面的 fiddle ),但遇到了一些定位问题。我希望提示显示在点击链接的中央和上方。此时左上角位于鼠标点击处。我试图将这个位置抵消一半的工具提示,但没有成功。

http://jsfiddle.net/Ricco/CBf4C/

最佳答案

http://jsfiddle.net/CBf4C/3/ 查看更改

您需要获取点击元素的位置(使用.position() ),使用.outerWidth() 获取工具提示的尺寸|和 .outerHeight()然后根据这些计算..

实际代码是

$('a[title]').click(function(e) {

    //fadetooltip and display information
    $('body').append('<div class="tooltip"><div class="tipBody"></div></div>');
    tip = $(this).attr('title');
    var tooltip = $('.tooltip'); // store a reference to the tooltip to use it later
    tooltip.fadeTo(300, 0.9).children('.tipBody').html( tip );


    // calculate position of tooltip
    var el = $(this),
        pos = el.position(), // get position of clicked element
        w = el.outerWidth(), // get width of clicked element, to find its center
        newtop = pos.top - tooltip.outerHeight() , // calculate top position of tooltip
        newleft = pos.left + (w/2) - (tooltip.outerWidth()/2); // calculate left position of tooltip

    //set position
    $('.tooltip').css('left', newleft )  ;
    $('.tooltip').css('top',  newtop );

    hideTip = false;
});

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

相关文章:

javascript - HTML 不会自动解释字符代码

jquery - 如何检查值是否为 JSON 对象?

javascript - 如何将脚本添加到 React 组件并用作构造函数

javascript - 将 wowbook 与 ionic 集成

javascript - JSON 到表格格式并填充空白

javascript - 如何解决 DropDownList 更改时的 Javascript 未捕获引用错误?

php - Kendo DropDownlist 模板选择值而不使用索引

php - 如何在 PHP 中使用 filemtime 函数?

javascript - 对于某些 HTML 内容,点击事件在 Safari Mobile 中不起作用

javascript - 如何在 iOS 的 React Native 中显示从 Firebase 检索到的数据