我剛開始學習JavaScript,我需要一些幫助。 我有一個HTML文件和一個CSS文件,我不作任何改變。 使用Javascript,我必須添加2個鏈接,它會隱藏和顯示類「show」的段落。
當您在瀏覽器中打開HTML文件時,應該隱藏有問題的段落。如何用Javascript隱藏/顯示文本 - 鏈接行爲
我已經閱讀了幾乎所有關於隱藏/顯示文本方法的文章,但我仍然無法解決問題,我似乎無法讓我的鏈接正常工作。
這是我已經在我的JavaScript代碼這麼遠:
window.onload = function(){
var par = document.getElementsByTagName("p");
var parArray = [];
for (var i=0 ; i < par.length; i++) {
if (par[i].getAttribute("class") === "show") {
parArray.push(par[i]);
par[i].style.display = "none";
}
}
console.log(par);
console.log(parArray);
for (i=0 ; i<parArray.length; i++) {
var a = document.createElement('a');
var linkText = document.createTextNode("Show more information");
a.appendChild(linkText);
a.title = "Show more information";
a.href = "#";
parArray[i].parentNode.appendChild(a);
}
}
我想打一個函數,它會在適當的行爲添加到我的鏈接(顯示文本和更改鏈接文本隱藏或隱藏文本並更改顯示的鏈接文本),然後使用onclick事件處理函數調用該函數。
這裏是我的html代碼,以及:
<head>
<meta charset="utf-8">
<title>Javascript Hidden textarea</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<div id="content">
<div class="post">
<h3>
Title
</h3>
<p class="author">
paragraph One
</p>
<aside>
JavaScript
</aside>
<p>
paragraph two
</p>
<p class="show">
...We must hide this paragraph.
</p>
</div>
<div class="post">
<h3>
Title
</h3>
<p class="author">
paragraph One
</p>
<aside>
JavaScript
</aside>
<p>
paragraph two
</p>
<p class="show">
...We must hide this paragraph.
</p>
</div>
</div>
</div>
<script type="text/javascript" src="hidetext.js"></script>
</body>
</html>
預先感謝您!
爲什麼你的'for'循環嵌套?你可以修改HTML嗎?只需將'style =「display:none;」'添加到隱藏頁面以將其默認爲false。您也無法將特定的按鈕與特定的'show'元素鏈接起來,您必須爲'onclick'處理程序添加一些內容以作爲目標。你有沒有考慮過使用jQuery? – Tony 2014-08-28 19:06:14
我不應該使用jQuery,我不能更改我的HTML代碼或我的CSS代碼。只是JavaScript代碼。 – JoeyPan 2014-08-28 19:07:55