按照官方的解释,getElementById选择的是DOM元素,那么如下代码,选择的p、span、a弹出的都应该是字符串‘object’,可为什么a弹出的却是‘http://www.baidu.com’?怎么解释?
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript"> window.onload = function (){ var demoLink = document.getElementById('demoLink'); var demoSpan = document.getElementById('demoSpan'); var demop = document.getElementById('demop'); alert(demoLink); alert(demop); alert(demoSpan); } </script> </head> <body> <a href="http://www.baidu.com" id="demoLink">这是一个链接</a> <span id="demoSpan">这是一个span标签</span> <p id="demop">这是一个span标签</p> </body> </html>
javascript - getElementById によって選択されるタグがオブジェクトではなくリンク アドレスであるのはなぜですか? -PHP中国語サイトQ&A-javascript - getElementByIdで選択されるタグがオブジェクトではなくリンクアドレスなのはなぜですか? -PHP中国語サイトQ&A
ぜひ見て学んでください。
因为调用了toString()这一个方法,而这一个方法又是Native Code的。不过可以自定义的。
如果想输出p和SPAN里面的内容
可以用
alert(demop.innerText);
alert(demoSpan.innerText);