我无法理解一件事。我有一个函数接受dom元素的id作为参数:
例如
HTML
<ol id="ol">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ol>
JS
function whatever(elem) {
var element = document.getElementById(elem);
}
初始化
whatever(ol)
为什么当我在函数中执行console.log(element)
时,它显示null
?我错过了什么?
答案 0 :(得分:2)
whatever("ol")
应该可以解决问题。
答案 1 :(得分:0)
我相信你的问题是双重的:
你有一个范围问题。变量element
在whatever
函数中定义和分配,这意味着您无法在该函数之外看到它。您希望从函数中返回调用document.getElementId的结果。
function whatever(id) {
return document.getElementById(id);
}
您必须将表示元素id的字符串传递给您的函数。
var element = whatever("ol");
有了这两件事,element
现在将成为对正确HTML元素的引用。