2017-08-04 171 views
0

Codepen:https://codepen.io/bgbs/pen/XaNOgM需要幫助調試功能變化

我試圖做的是JavaScript的選擇TD特定單詞,並用跨度爲進一步造型包裹。但它不想因爲某種原因而工作。有任何想法嗎?

<style> 
 
    .big { 
 
    font-size: 55px; 
 
    } 
 
</style> 
 
<script> 
 
    function chng() { 
 
    var text = document.getElementByTagName('td').innerHTML; 
 
    var text2 = text.replace('Germany','<span class="big">Germany</span>'); 
 
    document.getElementByTagName('td').innerHTML = text2; 
 
    } 
 
</script> 
 

 
<body> 
 
    <table> 
 
    <tr> 
 
     <td>Brazil - England - Germany</td> 
 
    </tr> 
 
    </table> 
 
    <button onclick="chng()">Try it</button> 
 
</body>

+1

沒有這樣的方法:'document.getElementByTagName'。 – Teemu

+0

相關:[將網頁文本中的匹配詞更改爲按鈕](https://stackoverflow.com/a/40576258) – Makyen

+0

可能的重複:[querySelectorAll,getElementsByClassName和其他getElementsBy \ *方法返回什麼?](https: //stackoverflow.com/q/10693845) – Makyen

回答

1

試試這個:

function chng(){ 
    var text = document.getElementsByTagName('td')[0].innerHTML; 
    var text2 = text.replace('Germany','<span class="big">Germany</span>'); 
    document.getElementsByTagName('td')[0].innerHTML = text2; 
} 

你拼錯getElementsByTagName()。它返回HTMLCollection,你需要得到第一個元素,所以document.getElementsByTagName('td')[0]

+0

哇!棒極了。 [0]應該做什麼? – user5248

+1

它通過調用'getElementsByTagName()'獲得HTMLCollection的第一個元素。該函數返回許多元素的集合,而不是一個元素。 '[0]'指定了你想要的確切元素。 – curveball

+0

aaaaah。謝謝。 – user5248