2017-03-01 80 views
0

我正在使用单独的.js文件更改某些文本的颜色。我是HTML和JavaScript的新手,请详细说明。谢谢。在html中使用javascript更改文本的颜色

这是我走到这一步:

htmlfile.html

<html> 
<body> 
    <p id="demo"> Click the button to change the text in this paragraph. </p> 
</body> 
</html> 

jsfile.js

var button = document.createElement("button") 
    button.innerHTML = "Red or green" 
    // Sets or returns the content of an element 

    // 2. Append somewhere 
    var body = document.getElementsByTagName("body")[0] 
    body.appendChild(button) 
    // Adds a new child node, to an element, as the last child node 

    // 3. Add event handler 
    button.addEventListener("click", function() { 
     state = !state 
     // Attaches an event handler to the specified element 

     //var led = document.createElement('LED') 
     if (state = 1) { 
      document.getElementById("demo").style.color = "red" 
     } else { 
      document.getElementById("demo").style.color = "green" 
     } 
     //body.appendChild(led) 
    }) 
} 
+1

的可能重复[使用JavaScript更改文本颜色?(http://stackoverflow.com/questions/17925577/change-text-color-with-javascript) – Santi

回答

0

几个建议的:

  1. 使用document.body,而不是在线路末端getElementsByTagName('body')
  2. 用分号(指令)
  3. 如果你如果()条件比较值创建state变种外addEventListener功能
  4. ,使用=====代替=

var button = document.createElement('button'); 
 
button.innerHTML = 'Red or green'; 
 

 
document.body.appendChild(button); 
 

 
var state = 0; 
 

 
button.addEventListener('click', function(){ 
 
    var demo = document.getElementById("demo"); 
 

 
    if (state === 1) { 
 
    demo.style.color = 'red'; 
 
    state = 0; 
 
    } else { 
 
     demo.style.color = 'green'; 
 
     state = 1; 
 
    } 
 
});
<html> 
 
<body> 
 
<p id="demo">Click the button to change the text in this paragraph.</p> 
 
</body> 
 
</html>

1

status = 1; 
 
function switchStyle() { 
 
x = document.getElementById("text"); 
 
if(status==1) { 
 
    x.style.color = 'blue'; 
 
    status = 2; 
 
} 
 
else if(status==2) { 
 
    x.style.color = 'red'; 
 
    status = 1; 
 
} 
 
}
<p id="text">This text color will change.</p><br> 
 
<button type="button" onclick="javascript:switchStyle();">Switch Style</button>