1

我正在尝试将一个非常简单的悬停工具提示直接放置在页面上的一系列元素上方。我的定位代码在 FF 中完美运行,但在 IE8 中,如果页面滚动则定位失败。我正在补偿滚动,但在 IE8 中,我似乎必须将数字翻倍才能正常工作。

$('.evidence_thumb').mouseenter(function() {
    var position = $(this).position();
    $top = ((position.top - $('#icon_tool_tip').height()) + $(window).scrollTop()) + 10;
    $left = ((position.left) + $(window).scrollLeft()) - 40;
    $('#icon_tool_tip').offset({ top: $top, left: $left });
});

使用上述代码显示的误差范围始终是 scrollTop 的数量。我没有测试过水平滚动,但我认为它会有同样的问题。

4

1 回答 1

1

我不会准确地将其称为“已解决”,但我停止使用 jquery 偏移量来支持 css。我改变了: $('#icon_tool_tip').offset({ top: $top, left: $left }); to: $('#icon_tool_tip').css({ top: $top, left: $left });

它使我的问题消失了,但是这里发生了一些我希望理解的偏移量。

于 2011-04-05T16:08:14.237 回答