學習筆記:
關鍵
1. 取得元素控制權
2. 監聽按鈕、獲得新的內容
3. 改變元素內容
4. 監聽按鈕、移除元素內容
5. 整理重複的內容,變成共用的函式
取得元素控制權
const content = document.getElementById(“content”);
const date = document.getElementById("date");
const time = document.getElementById("time");
const addedBtn = document.getElementById("addedBtn");
const deletedBtn = document.getElementById("deletedBtn");
const list = document.getElementById("list");
監聽按鈕、獲得新的內容
const listContent = [];
addedBtn.addEventListener("click", function () {
listContent.push({
content: content.value,
date: date.value,
time: time.value,
});
});
改變元素內容
let contentText = '';
listContent.forEach(function (item) {
contentText = contentText +`
<div class="item">
<div>
<p>內容:${item.content}</p>
<p>時間:${item.date}${item.time}</p>
</div>
</div>
`;
});
list.innerHTML = contentText;
監聽按鈕、移除元素內容
deletedBtn.addEventListener(‘click’, function(){
listContent.pop();
let contentText = '';
listContent.forEach(function (item) {
contentText = contentText +`
<div class="item">
<div>
<p>內容:${item.content}</p>
<p>時間:${item.date}${item.time}</p>
</div>
</div>
`;
});
list.innerHTML = contentText;
});
整理重複的內容,變成共用的函式
addedBtn.addEventListener(“click”, function () {
listContent.push({
content: content.value,
date: date.value,
time: time.value,
});
render();
});
deletedBtn.addEventListener('click', function(){
listContent.pop();
render();
});
上面的render();是將原本兩個監聽事件重複的內容整理成一個函式
function render(){
let contentText = '';
listContent.forEach(function (item) {
contentText = contentText +`
<div class="item">
<div>
<p>內容:${item.content}</p>
<p>時間:${item.date}${item.time}</p>
</div>
</div>
`;
});
list.innerHTML = contentText;
});
小秘訣:
可以到w3schools尋找需要的語法,有很多教學跟使用範例