最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

實(shí)現(xiàn)創(chuàng)建一個(gè)新li標(biāo)簽,內(nèi)容為"php",并將新創(chuàng)建的li插入到內(nèi)容為HTML的標(biāo)簽前。

http://yifanck.cn/code/1699

若看不到html框架代碼,想寫個(gè)找到內(nèi)容為HTML的元素節(jié)點(diǎn),并找到他的父節(jié)點(diǎn),再創(chuàng)建標(biāo)簽插入,這個(gè)應(yīng)該怎樣寫? 我這里的a代表父節(jié)點(diǎn),y代表新創(chuàng)建的節(jié)點(diǎn),把n當(dāng)成內(nèi)容是HTML的節(jié)點(diǎn) 我這段代碼應(yīng)該怎樣改?請(qǐng)高手指點(diǎn)~這里應(yīng)該不用判斷父節(jié)點(diǎn)是否是元素節(jié)點(diǎn)了吧?

? function insetb(n){

? ? ? if(n.innerHTML=="HTML"){

? ? ? ? ? var a=n.parentNode;

? ? ? ? ? var y=document.createElement("li");

? ? ? ? ? y.innerHTML='PHP';

? ? ? ? ? a.insertBefore(y,n)

? ? ? ? ? } ?

? ? ? }

正在回答

4 回答

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>無標(biāo)題文檔</title>

</head>

<body>


<ul id="test">

? ? <li>JavaScript</li>

? ? <li>HTML</li>

</ul>?

<p>段落</p>

<h1>標(biāo)題</h1>

<ul id="test">

? ? <li>JavaScript</li>

? ? <li>HTML</li>

? ? <li>CSS</li>

</ul>?

<script>

? ? window.onload=function(){

? ? ? ? var body=document.body;

? ? ? ? var Obj=body.getElementsByTagName("*");

? ? ? ? for(var i=0,leng=Obj.length;i<leng;i++){

? ? ? ? ? ? if(Obj[i].innerHTML == "HTML"){

? ? ? ? ? ? ? ? var newNode=document.createTextNode("PHP"); ? //添加的文本節(jié)點(diǎn),所以前面沒有列表的符號(hào)

? ? ? ? ? ? ? ? Obj[i].parentNode.appendChild(newNode);

? ? ? ? ? ? ? ? break; ?//如果只找第一個(gè)HTML,則break;不要這句就是找所有HTML后面添加PHP

? ? ? ? ? ? }

? ? ? ? }

? ? }

</script>

</body>

</html>


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

仢約 提問者

var body=document.body; var Obj=body.getElementsByTagName("*");我把你這兩句給改成 var Obj=document.getElementsByTagName("*");我看結(jié)果沒啥變化,我可以理解成他倆等同么?
2016-11-25 回復(fù) 有任何疑惑可以回復(fù)我~

<script type="text/javascript">

? ?function find(node){

? ? ? if(node.children.length!=0){

? ? ? ? var a=node.children;

? ? ? ? for(var i=0;i<a.length;i++){

? ? ? ? ? if(a[i].innerHTML == "HTML"){

? ? ? ? ? ? ? var n=a[i].parentNode;

? ? ? ? ? ? ? var y=document.createElement("li");

? ? ? ? ? y.innerHTML='PHP';

? ? ? ? ? n.insertBefore(y,a[i])

? ? ? ? ? break;

? ? ? ? ? }

? ? ? ? ? find(a[i]);

? ? ? ? }

? ? ? }

? ? }

? ? var body=document.body;

? ? find(body);

</script>?

老友給寫的代碼,保存到這里吧~

0 回復(fù) 有任何疑惑可以回復(fù)我~

不是很明白你的意思,大概猜的。

如果不知道HTML代碼要找特定的一個(gè)元素節(jié)點(diǎn),還不知道id和class。只能從body開始的子節(jié)點(diǎn)一個(gè)節(jié)點(diǎn)一個(gè)節(jié)點(diǎn)不斷往下找。這樣就需要遞歸。jQuery好像有個(gè)簡單的辦法,原生JS只能一層一層往下找,沒找到一個(gè)節(jié)點(diǎn),然后判斷,這樣就可以找到了。

不過話說回來,HTML和JavaScript都是前端的,這種情況一般很少出現(xiàn)。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

仢約 提問者

對(duì),就是這意思,我覺得現(xiàn)在咱們應(yīng)該能夠?qū)崿F(xiàn),但是我寫不出來~
2016-11-16 回復(fù) 有任何疑惑可以回復(fù)我~

你沒有聲明n是哪個(gè)標(biāo)簽吧

試下var n = document.getElementByTagName('li');

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

仢約 提問者

假想如果我們不知道它的標(biāo)簽是li,那應(yīng)該怎么辦?
2016-11-16 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

實(shí)現(xiàn)創(chuàng)建一個(gè)新li標(biāo)簽,內(nèi)容為"php",并將新創(chuàng)建的li插入到內(nèi)容為HTML的標(biāo)簽前。

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)