您好我對javascript的使用經驗有限,我正在嘗試使用腳本向div添加樣式。如果父跨度爲空,則隱藏div javascript
我有一個cms實例,我無法直接訪問代碼,我可以改變的只有<div class="overlay">
和javascript。如果包含div的跨度爲空,我需要能夠隱藏div。
的HTML:
<div class="textrow div_SA" style="height:16px;">
<span class="spn_SA" style="font-weight:bold;color:#B22222;">
<div class="overlay"></div> Save $10.00
</span>
</div>
我試圖使用JavaScript(在這裏找到和修改了一下)
window.onload = function() {
var spans = document.getElementsByTagName('span');
var i = 0,
L = spans.length,
tem, pa;
while (i < L) {
tem = spans[i++];
if ((tem.className.indexOf('spn_SA') != -1) && ((tem.textContent === 0 || tem.textContent === null) && !tem.innerText)) {
tem.childNode.style.display = "none";
}
}
};
的結果是,如果跨度不包含文本Save $10.00
該腳本會將display:none
添加到<div class="overlay"></div>
(我正在使用此div來顯示銷售標誌圖像)
DIV不能是SPAN的孩子 - 您正在創建無效的HTML,因此不要期望事情按照您的期望工作。 – CBroe
包含div *的span *永遠不會爲空:-) – Bergi