簡體   English   中英

Javascript更改字體顏色onclick

[英]Javascript change font color onclick

因此,當我單擊單選按鈕時,我試圖更改整個頁面的字體顏色,如下所示:

<input type="radio" name="textcol" value="#FOF8FF" onclick = "changeText('#FOF8FF');"> Alice Blue<br>

然后調用此函數:

function changeText(col) 
    {
        console.log(col);
        console.log(document.getElementsByName('boyo'));
        var abc = document.getElementsByName('boyo');
        for(var i = 0, length = abc.length; i < length; i++)
        {
            abc[i].style.color = col;
        }

}

就像您知道的那樣,在我所有的h3和p標簽(文檔中唯一的文本)中,我給它們起了一個“ boyo”的名字,如下所示:

<h3 name = "boyo">My favorite food</h3>

但是由於某種原因,它什么也沒做。 我知道它具有適當的元素(如您所見,我將它們打印到控制台上),並且沒有發生錯誤,但是我的字體顏色沒有改變。 我到底在做什么錯?

編輯:當我只將字符串“#80FF08”的值與我傳遞的值進行比較(打印時也完全相同)時,它返回FALSE,表示它們相等-怎么可能? 當我手動設置顏色時,它可以工作。

如果您將顏色代碼#FOF8FF中的O更改為0,則代碼將正常工作

 function changeText(col) { console.log(col); console.log(document.getElementsByName('boyo')); var abc = document.getElementsByName('boyo'); for (var i = 0, length = abc.length; i < length; i++) { abc[i].style.color = col; } } 
 <input type="radio" name="textcol" value="#FOF8FF" onclick='changeText("#F0F8FF")'>Alice Blue <br> <h3 id="colorMe" name="boyo">My favorite food</h3> 

將顏色更改為可以正常工作的其他顏色,似乎#FOF8FF不是有效的十六進制值:

 function changeText(color) { console.log(color); console.log(document.getElementsByName('boyo')); var abc = document.getElementsByName('boyo'); for (var i = 0, length = abc.length; i < length; i++) { abc[i].style.color = color; } } 
 <input type="radio" name="textcol" value="#FOF8FF" onclick="changeText('#33ccff');">Alice Blue <br> <h3 name="boyo">My favorite food</h3> 

這是因為#FOF8FF不存在,請嘗試使用#000或任何其他顏色代替#FOF8FF。

如果您想進一步了解它並檢查您的元素並嘗試賦予顏色:#FOF8FF,它也想要工作。 供您參考,我在此附上屏幕截圖。

在此處輸入圖片說明

#FOF8FF不存在,將O更改為0 ,我添加了不同的顏色代碼,並且工作正常

 function changeText(col) { console.log(col); console.log(document.getElementsByName('boyo')[0]); var abc = document.getElementsByName('boyo')[0].style.color = col; } 
 <h3 name = "boyo">My favorite food</h3> <input type="radio" name="textcol" value="#d2d2d2" onclick = "changeText('#d2d2d2');"> Alice Blue<br> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM