我是javascript的新手。 我有一个错误 未捕获的TypeError:无法读取null fiddle.jshell.net:1163的属性'children' (匿名功能) 如何修复错误
在下面提供我的小提琴
http://jsfiddle.net/N3GTy/29/embedded/result/
var slider = new Swipe(document.getElementById('slider'), {
callback: function(e, pos) {
var i = bullets.length;
while (i--) {
bullets[i].className = ' ';
}
bullets[pos].className = 'on';
}
}),
bullets = document.getElementById('position').getElementsByTagName('em'),
// tabs
tabs = new Swipe(document.getElementById('tabs'), {
callback: function(event, index, elem) {
setTab(selectors[index]);
}
}),
selectors = document.getElementById('tabSelector').children;
Uncaught TypeError: Cannot read property 'children' of null
for (var i = 0; i < selectors.length; i++) {
var elem = selectors[i];
elem.setAttribute('data-tab', i);
elem.onclick = function(e) {
e.preventDefault();
setTab(this);
tabs.slide(parseInt(this.getAttribute('data-tab'), 10), 300);
}
}
答案 0 :(得分:3)
没有id为“tabSelector”的元素。因此,document.getElementById('tabSelector')返回null。我使用chrome的调试器测试了这个,转到:
http://fiddle.jshell.net/N3GTy/29/show/light/
并从chrome调试器控制台运行两个命令:
的document.getElementById( '滑块'); 像你期望的那样返回一个domNode。
的document.getElementById( 'tabSelector'); 返回null,因为它不存在。
调用null.children会导致错误。