[英]How do I assign a random colour to links?
只是想知道為什么我的代碼無法正常工作。 我這樣做是完全錯誤的嗎?
window.onload = function random() {
var links = document.getElementsByTagName('a');
var colours = new Array("green","red","blue");
var randomColour = colours[Math.floor(colours.length * Math.random())];
for (a = 0; a < links.length; a++) {
links[a].style.color = 'randomColour';
}
}
'randomColor'
-> randomColor
。
使用變量而不是帶引號的字符串。 另外,為確保每個鏈接獲得隨機顏色,請在循環中生成顏色:
for (var a = 0; a < links.length; a++) {
var randomColour = colours[Math.floor(colours.length * Math.random())];
links[a].style.color = randomColour;
}
為了最大程度地減少設置顏色和解析鏈接之間的延遲,請綁定DOMContentLoaded
事件,或者將代碼粘貼到<body>
的末尾:
<a>Test</a>
...
<a>Test</a>
<script>
(function() { // <-- Anonymous function to not leak variables to the global scope
var links = document.getElementsByTagName('a');
var colours = ["green", "red", "blue"];
for (var a = 0; a < links.length; a++) {
var randomColour = colours[Math.floor(colours.length * Math.random())];
links[a].style.color = randomColour;
}
})();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.