我想通過獲取當前頁面名稱的腳本(通過$ _SERVER [「PHP_SELF」]),然後在JavaScript中找到相關的名稱(即從/contact.php找到聯繫人)並搜索具有該ID的元素(我的列表項具有與其目標相匹配的ID)。現在我想交換元素的id爲「cur」,這會賦予它相關的樣式,使當前頁面的標籤顯示不同。但是我遇到了問題,儘管嘗試replaceNode和replaceChild使用適當的語法。下面是它的冗長的表單中的腳本:通過替換節點更改節點id
function setCurPage() {
var CurPage = "<?php echo $_SERVER["PHP_SELF"]; ?>"; // equates to "/contact.php"
var CurRaw = CurPage.substr(1);
var Cur = CurRaw.split(".")[0];
var oldNode = document.getElementById(Cur);
var newNode = document.createElement("li");
newNode.id = "cur";
var innards = document.getElementById(Cur).children;
while(innards.length > 0) {
newNode.insertBefore(innards[0]);
}
oldNode.parentNode.replaceChild(newNode, oldNode);
}
我已經試過各種警報,我知道節點創建行是正確的,但的replaceChild行之後的任何警報打破。有人有主意嗎?