讓我們有一個例子:從一個到/刪除元素,直到另一個
<table>
<tr class="need"></tr>
<tr class="no-need"></tr> // This is ourElement, needs to be removed
<tr></tr> // This element needs to be removed
<tr class="no-need"></tr> // This element needs to be removed
<tr class="no-need"></tr> // This element needs to be removed
<tr class="need"></tr> // Elements removed until this
</table>
我想一次刪除這些四個要素。
這是我做了什麼:
function remove(ourElement) {
var body = ourElement.parentNode,
bodyRows = body.getElementsByTagName('tr');
for (var i = 0; i < bodyRows.length; i++) {
if (bodyRows[i] == ourElement) {
if (!bodyRows[i+1].className) {
body.removeChild(bodyRows[i+1]);
}
}
if (bodyRows[i] > ourElement) {
if (bodyRows[i].className == 'no-need') {
body.removeChild(bodyRows[i]);
}
if (bodyRows[i].className == 'need') {
break;
}
}
}
body.removeChild(ourElement);
}
功能ourElement
後只刪除第一empy行和ourElement
本身。
正如我上面寫的,我需要在我們的函數首次運行時刪除這四個元素。
純Javascript需要。
你可以使用jQuery嗎? – Tool
請使用純Javascript。 – Hypn0tizeR
爲什麼不'if(!bodyRows [i + 1] .className || bodyRows [i + 1] .className =='no-need'){' – JCOC611