关于getElementById的问题。
来源:7-5 JS对表单元素进行设置3
firman
2019-12-12 17:22:25
<script type="text/javascript">
var yyyy = document.getElementById("yyyy");
function ymd(){
yyyy.options.add(new Option("1","1"));
}
</script>这里通过Id获取的是Obj类型的吗?能不能当做JS的全局变量?如果可以的话,放在function的外面为什么行不通呢?
2回答
同学你好!
获取的是一个对象
可以是全局的,但是你的js在页面引入时,应该放在页面的尾部,这样在加载js时,页面结构才能加载完,否在页面结构没有加载完,是无法获取页面的元素的
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
好帮手慕柯南
2019-12-12
同学你好!
1.如果放在函数的外面,下面这条语句在js加载时就会执行,此时document就需要从html中获取元素

2. 如果js的引入放在了html的头部,此时html还没加载完,js就需要document去获取页面元素,是获取不到的。因此你在调用ymd函数时,yyyy是null,所以就报错了
3. 不是全局变量放在js的尾部,是js放在html页面的尾部
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~