能否只設定一個變量
<!DOCTYPE?HTML> <html> <head> <meta?http-equiv="Content-Type"?content="text/html;?charset=gb2312"> <title>display</title> ????<script?type="text/javascript">? ????????var?mychar?=?document.getElementById("con"); ????????function?hidetext()?? {?? ????????mychar.style.display="none"; }?? function?showtext()?? {?? ????????mychar.style.display="block"; } ????</script>? </head>? <body>?? ????<h1>JavaScript</h1>?? ????<p?id="con">做為一個Web開發師來說,如果你想提供漂亮的網頁、令用戶滿意的上網體驗,JavaScript是必不可少的工具。</p>? ????<form> ???????<input?type="button"?onclick="hidetext()"?value="隱藏內容"?/>? ???????<input?type="button"?onclick="showtext()"?value="顯示內容"?/>? ????</form> </body>? </html>
為什么這樣不行
兩個函數都設定了mychar變量來存儲函數,不能不簡化成1個。我試著把變量寫在了函數之前,結果函數失效,是不是意味著函數里使用的變量只能在內設定,不能取用函數外的變量?
2015-08-18
因為html代碼是順序加載的,在執行?var?mychar?=?document.getElementById("con");這行代碼的時候,body中的內容還沒加載,獲取到的是null
2015-09-11
貌似這樣也不行,只有把js代碼放到body的最后才可以……但是為什么window.onload也不行了哇???
2015-09-11
前面加一個window.onload=function{}應該就可以了