javascript - 使用 offset().top 记录错误,为什么?

标签 javascript jquery

我正在尝试确定一个元素的顶部偏移量,但控制台记录了一个错误,即使 JQuery 的文档说它应该这样写:

$('.myObject').offset().top

错误:

Uncaught TypeError: Cannot read property 'top' of undefined

为什么会这样? 有什么解决办法吗?

最佳答案

这通常是因为 $('.myObject') 不返回任何内容。为了防止代码崩溃,请在调用 .offset().top

之前检查该元素是否存在
var myObj = $('.myObject');
if (myObj.length){
   myObj.offset().top
}

因为 .top 是一个属性而不是一个方法,它不是由 jQuery 处理的,因此,如果它不存在。

关于javascript - 使用 offset().top 记录错误,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19583286/

相关文章:

javascript - 追加到最近的 div

javascript - Facebook - 无效范围 : manage_pages

javascript - 将数组复制到变量同时排除项目 - 性能

javascript - 覆盖函数会导致过多的递归

jquery - 数据不会加载到 div 中

javascript - Imageflip Javascript不翻转

jQuery UI Slider - handle 动画和滚动内容不同步

javascript - Highcharts y 轴上限未被遵守

php - 使用 PHP 和 JS 构建 AJAX 网络应用程序的良好 RPC 模型是什么?

jquery - 使用一个函数折叠每个 div