我正在嘗試使用 JAVASCRIPT 洗掉或清空元素,但它必須是我們作為引數傳遞給函式的元素。例如,它必須在 onClick 上作業,一切都必須動態作業,但我無法讓它作業。到目前為止,這是我的代碼:
function deleteElement(selector, type) {
switch (type) {
case `${"delete" || "remove"}`:
document.querySelector(selector).remove();
break;
case "empty":
document.querySelector(selector).innerHTML = "";
break;
// if user doesn't enter desired outcome, the element will be deleted by default
default:
document.querySelector(selector).remove();
break;
}
}
我的問題是,使用此代碼如何對動態選擇的元素執行操作?
uj5u.com熱心網友回復:
如果您想在觸發時不使用選擇器而洗掉元素,您可以將其this作為引數而不是選擇器傳遞:
function removeEl(element){
element.remove();
}
<div onclick="removeEl(this)">click</div>
如果你想為所有共享同一個類/屬性/父級的 div 設定一個事件監聽器......你可以這樣做:(在這個例子中,你的元素之間的共享選擇器是div[data-type])
// looping thourgh all 'div's having a 'data-type' attribute
document.querySelectorAll('div[data-type]').forEach(element =>
// adding a simple onclick event listener
element.onclick = () => element.remove()
)
<div data-type="hi">Hey</div>
<div data-type="type">Yes sir</div>
uj5u.com熱心網友回復:
我很確定一定有一個更優雅的解決方案,但如果你真的需要一個聽眾,你可以這樣做:
clickable.addEventListener("click",(selector, type) => {deleteElement('section')});
clickable您可以使用 querySelector 設定的 DOM 元素在哪里。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/376165.html
標籤:javascript html 功能 动态的
上一篇:如何在SAS中使用sum函式
