JavaScript 运行时错误:无法获取未定义或空引用的属性“top”
JavaScript runtime error: Unable to get property 'top' of undefined or null reference
使用 IE10 时,我收到错误JavaScript runtime error: Unable to get property 'top' of undefined or null reference
尝试单击指向同一项目中网页的超链接时,JavaScript 应滚动到页面上的相应位置。
如果我使用除IE以外的任何其他浏览器,它可以从一个页面到另一个页面工作。但是,如果我在同一页面中使用相同的引用,它将在所有浏览器中上下滚动,但在离开页面时不会在IE中滚动。
链接
<li><a href="index.html#home_section">Home</a></li>
我使用的是jquery.nav.js
版本3.0.0,页面在var offset = $(target).offset().top;
时中断。
任何帮助将不胜感激:-)
如果浏览器是IE,则任何元素的Jquery offset().top计算都存在一些问题。要解决此问题,您可以使用本机 Javascript 来计算元素的顶部和左侧偏移量,并相应地使用它。这里 - 在 Javascript 方法下,该方法返回文档中任何元素的计算顶部和左侧的对象,它将适用于所有浏览器:
function findElementTotalOffset(obj) {
var oleft = otop = 0;
if (obj.offsetParent) {
do {
oleft += obj.offsetLeft;
otop += obj.offsetTop;
} while (obj = obj.offsetParent);
}
return {left : oleft, top : otop};
}
示例:var offset = findTotalOffset($(target)).top;
相关文章:
- 无法获取属性'selectedIndex'的未定义引用或null引用
- 无法获取属性'Id'使用Knockout.js的未定义或空引用API
- 如何正确引用传递到淘汰中的当前元素的属性.JS
- 如何使用object.assign()从其他对象引用基本对象属性
- 引用Ractive.js中的子属性
- 无法获取属性'字符串'的未定义或null引用IE 11 ASP.NET
- 使用闭包创建原型中引用的私有属性
- SCRIPT5007:无法获取属性'长度'的未定义引用或null引用
- 无法获取属性'setActionableButtonState'的未定义引用或null引用
- 传递引用 jQuery 后无法访问元素属性
- 使用连字符引用对象的属性名称
- 使用 Javascript 编写引用属性数据的 HTML
- 引用属性而不是 getter 和 setter
- AngularJS类中的引用属性(ControllerAs语法)
- 从子对象中的父对象引用属性
- 创建对象时引用属性
- 可以从另一个对象中引用属性的名称吗?
- 高度 CZML 的引用属性
- 将变量传递给原型或在函数中引用属性是更好的做法吗?
- 在实例化期间引用属性