JavaScript null引用错误
本文关键字:错误 引用 null JavaScript | 更新日期: 2023-09-27 18:26:09
我有一段代码如下所示,它应该选择图像对象列表中的第一个对象。当它运行时,大约有一半的时间我会遇到错误:
TypeError: Cannot read property of mylist
我意识到这是因为它试图引用一个尚未被赋予引用对象的对象。基本上,页面会被加载,我想用JavaScript调用这个函数,但是如果这个代码在引用列表之前运行,它就会出错。这是我的代码片段:
window.onload = function () {
try {
var tnl = $find('mylist');
tnl.selectFirstItem();
}
catch (exception) {
alert(exception);
}
}
tnl.selectFirstItem()
线是将错误抛出到catch块的线。
所以,我的问题是,有没有办法强迫它等待这个对象"tnl"被引用?
谢谢!
var tnl = $find('mylist');
应该是
var tnl = $('#mylist');
假设mylist是一个ID。
您使用的查找错误。
首先获取元素,然后使用它查找子元素。所以你可以这样做:
var container = $('.containerElement');
container.find('#mylist');
这是您想要的"循环"。但这仍然是错误的。如果$find('mylist');
返回后未分配tnl
,则以后不会分配。您可能有$find
调用引发的错误。
window.onload = function () {
try {
var tnl = $find('mylist');
var timer = setInterval(function() {
if (tnl) {
clearInterval(timer);
tnl.selectFirstItem();
}
}, 1000);
} catch (exception) {
alert(exception);
}
}