【问题标题】:offset() returns different values for the same element in Chromeoffset() 为 Chrome 中的同一元素返回不同的值
【发布时间】:2014-01-08 12:16:17
【问题描述】:

我正在构建的页面有两个选项卡(我正在使用 Bootstrap 来创建选项卡)。第一个(活动/默认)选项卡很长,并显示垂直滚动条。第二个选项卡很短,当它激活时垂直滚动消失。 第二个标签只包含一个文本输入,当聚焦时,我报告它的位置:

 var topleft = $("#input");
 console.log(topleft);

奇怪的是,在相同的浏览器和相同的页面加载中,我第一次和第二次专注于输入时,我得到的左侧数字不同:

对象{顶部:223,左侧:358.5}

对象{顶部:223,左侧:367}

left的第一个数字好像有一个垂直滚动条(虽然没有),但第二个是正确的。似乎chrome无法立即理解滚动条的变化。

【问题讨论】:

  • 你能做个小提琴什么的。

标签: jquery google-chrome


【解决方案1】:

区别就在这里,你可以用最后一个。

$(window).load(function () {
  var topleft = $("#input");
  console.log(topleft);
});

$(window).ready(function () {
  var topleft = $("#input");
  console.log(topleft);
});

【讨论】:

    猜你喜欢
    • 2015-08-15
    • 1970-01-01
    • 2013-02-27
    • 2018-02-16
    • 1970-01-01
    • 1970-01-01
    • 2017-08-16
    • 1970-01-01
    • 2013-12-29
    相关资源
    最近更新 更多