感覺你們都懂了只有我不懂??!幫幫忙吧!
<!DOCTYPE?HTML> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/> <title>innerHTML</title> </head> <body> <h2?id="con">javascript</H2> <p>?JavaScript是一種基于對象、事件驅動的簡單腳本語言,嵌入在HTML文檔中,由瀏覽器負責解釋和執行,在網頁上產生動態的顯示效果并實現與用戶交互功能。</p> <script?type="text/javascript"> ??var?mychar=document.getElementById("con")???????????; ??document.write("原標題:"+mychar.innerHTML+"<br>");?//輸出原h2標簽內容 ??mychar.innerHTML="Hello?world" ??document.write("修改后的標題:"+mychar.innerHTML);?//輸出修改后h2標簽內容 </script> </body> </html>
不是說按順序執行嗎?所以結果按道理應該是:
1.javascript
2.原標題:javascript
3.修改后的標題:Hello world
這樣才對啊,就算是mychar.write="Hello word" 替換,那也是發生在第三步啊,
為什么Hello world會顯示在最上面?
2016-10-26
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>innerHTML</title>
</head>
<body>
<h2 id="con">javascript</H2>
<p> JavaScript是一種基于對象、事件驅動的簡單腳本語言,嵌入在HTML文檔中,由瀏覽器負責解釋和執行,在網頁上產生動態的顯示效果并實現與用戶交互功能。</p>
<script type="text/javascript">
? function fu(){
????? var mychar=document.getElementById("con");
????? document.write("原標題:"+mychar.innerHTML+"<br>"); //輸出原h2標簽內容
????? mychar.innerHTML="Hello world!";
????? document.write("修改后的標題:"+mychar.innerHTML); //輸出修改后h2標簽內容
? }
? var panduan=confirm("確定修改h2標題嗎?");
? if(panduan){
??? fu();
? }
? </script>
</body>
</html>
試試,會看明白的
2016-09-22
2016-09-22
原因分析:其實并不是先執行<script>中的內容,可以驗證:【如果先執行<script>中的內容】 1)將<script>...</script>整塊剪切到<head>中去,就沒有顯示效果。2)將<p>..</p>內容剪切到</script>標簽后,同理。因為先執行的話并不知道<p>標簽的id,所以不會顯示。
結論:是執行到給mychar重新賦值時改變的。
2016-09-18
innerHTML在JS是雙向功能:獲取對象的內容 ?或 ?向對象插入內容; 第一個是獲取,獲取
<h2 id="con">javascript</h2>,
<script type="text/javascript">
? var mychar=document.getElementById('con') ?
document.write("原標題:"+mychar.innerHTML+"<br>");
第二個是插入內容插入
mychar.innerHTML='Hello world!'
? document.write("修改后的標題:"+mychar.innerHTML);
2016-09-11
innerHTML 屬性用于獲取或替換 HTML 元素的內容,在你執行?mychar.innerHTML="Hello?world"時?!?lt;h2?id="con">javascript</H2>”中的內容已經替換為Hello?world
2016-09-09
因為innerHTML是賦值,修改替換