亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于display、function用法

http://img1.sycdn.imooc.com//566957940001e5b905430592.jpg

??function?hidetext()??
????????{???var?mychar=?document.getElementById("con");
????????????mychar.style.display="none";}
??function?showtext()
????????{???var?mychar=?document.getElementById("con");
????????????mychar.style.display="block";}

下面是正確的代碼。為什么截圖中這樣寫不行?不都是在<script>...</script>標簽中嗎

正在回答

4 回答

你把mychar 獲得元素引用從函數中提出來的話 就得把整個script標簽放在你要獲取的那個元素后面,因為順序加載的緣故,像你現在這樣放的話,執行 mychar = document.getElement…… ?瀏覽器還沒有加載到那個標簽,所以mychar的引用為undefined

4 回復 有任何疑惑可以回復我~
#1

有事燒紙 提問者

同樣是按順序加載,為啥不把mychar提出來就可以
2015-12-10 回復 有任何疑惑可以回復我~
#2

木子舟義 回復 有事燒紙 提問者

你既然知道有順序加載這個概念.那為什么不能理解你在執行mychar = document.getElementById("con") 的時候這個 id為con的HTML標簽并沒有被渲染在DOM樹上的事實。
2015-12-10 回復 有任何疑惑可以回復我~
#3

有事燒紙 提問者 回復 木子舟義

好的! 我了解了 DOM還沒有學。 誒 你好像經?;卮鹞业膯栴} 0.0 謝謝你
2015-12-10 回復 有任何疑惑可以回復我~
#4

木子舟義 回復 有事燒紙 提問者

不客氣,加油~
2015-12-10 回復 有任何疑惑可以回復我~
#5

jikaiyang

順序加載是指從body部分開始嗎??
2015-12-15 回復 有任何疑惑可以回復我~
查看2條回復

跟作用域有關,寫在函數外邊的 變量mychar是全局變量

你瀏覽器怎么報錯的吧?

0 回復 有任何疑惑可以回復我~
#1

有事燒紙 提問者

沒報錯 就是沒有反應
2015-12-10 回復 有任何疑惑可以回復我~

你調用函數時它只是單純的執行函數里的代碼,而不管前面的和后面的

1 回復 有任何疑惑可以回復我~
#1

有事燒紙 提問者

謝謝了
2015-12-10 回復 有任何疑惑可以回復我~

把script挪到</form>后面,需要先加載內容,js才能對內容進行操作,是順序執行的

2 回復 有任何疑惑可以回復我~
#1

有事燒紙 提問者

謝謝~
2015-12-10 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript入門篇
  • 參與學習       741433    人
  • 解答問題       9869    個

JavaScript做為一名Web工程師的必備技術,本教程讓您快速入門

進入課程

關于display、function用法

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號