2015-09-04 80 views
0

我使用此代码:LINK - 它表示以水平方式读取位置。阅读位置指示器 - Chrome问题

我想调整这个脚本来获取不是整个文档的高度,但只有我的div的一个高度。这是原来的功能:

var getMax = function(){ 
return $(document).height() - $(window).height(); 
} 

我尝试用它来取代上面的代码:

var getMax = function(){ 
var content = $("#content"); 
return content.height(); 
} 

Eveything在Firefox中工作正常,但在Chrome我卧式酒吧立即填满。我怎样才能解决这个问题?

回答

1

您可以修复此问题,在$(window).load(fn)事件中更改您的$(document).ready(fn)

  • ready被触发时,DOM完全加载,在这种情况下,你在Chrome元素可能还没有准备好或者不完全加载尚未
  • load,而是向你保证,在页面中的所有资产被加载,所以你可以安全地对元素进行操作(在你的情况下计算高度)。 This demo适用于Firefox和Chrome。

documentation

load事件被发送到一个元件时,它和所有的子元素具有 完全加载。此事件可以发送到与URL相关联的任何元素 :图像,脚本,框架,iframe和窗口对象。


Here解释在深度多一点readyload事件之间的差别的文章。