Wenn Du solch ein Attribute setzt, musst Du es auch auswerten. Vermutlich ist dies, was Du brauchst:
function showArray2(zz,rr)
{
var gallerie = document.getElementById(rr);
for (var i = 0; i < randomNumberCompare.length; i++)
{
var im = imgArray[zz[ i ]];
gallerie.appendChild(im);
im.addEventListener("click", function(idx) { return function()
{
if (!im.getAttribute("data-locked") {
im.setAttribute("data-locked", "true");
if (vergleichccr==idx)
{
randomNumberBasic.splice(vergleichcbr,1);
}
else
{
alert("war nichts");
}
}
};
}(i));
}
}
Außerdem: Habe ich dich richtig verstanden, dass Du alle Bilder sperren möchtest? Wenn ja, ist es so nicht ausreichend, sondern du musst in einer Schleife über alle Bilder das Attribut setzen.