Der ursprüngliche Code hatte einen Tippfehler (Domument - weshalb es nicht funktionierte), aber Sie können dies effizienter mit jQuery tun (da Ihre Frage mit jQ markiert ist) - durchlaufen Sie Ihre Liste und fügen Sie sie dann an zum div im HTML - Beachten Sie, dass ich jedem div eine bg-Klasse mit der aufgelisteten Farbe hinzugefügt habe.
Dies ermöglicht eine externe CSS-Ansatz für das Styling der divs, anstatt Inline-Styling, die Sie hatten. Es ist viel besser, das CSS aus dem HTML zu entfernen, wenn du kannst. Gleiches gilt für das JavaScript - Entfernen aus dem HTML und Hinzufügen in das Skript über einen Event-Handler ermöglicht eine bessere Code-Struktur.
$(document).ready(function(){
var str="";
var list=["red","green","blue"];
for (i = 0; i < list.length; i++) {
str += "<div class='pick bg-"+ list[i] +"'>Click Me</div>";
}
$('.colorpick').append(str);
$('.pick').on('click',function(){alert($(this).css('background-color'))});
})
.bg-red{background:red}
.bg-green{background:green}
.bg-blue{background:blue}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="colorpick"></div>
nein ich einen Fehler nicht bekommen. –
kein Fehler keine Frage nur eine Demo dann? – guradio
Es ist 'document.write', nicht' domument.write'. Und ja, du ** hast ** einen Fehler bekommen. Öffnen Sie Ihre Webkonsole. –