2016-12-20 1 views
-1
// T duplicates the selected element(s). 
case 116: 
    elementSel = document.querySelectorAll("div.selected"); 
    var elementClone, 
    tmp = getBrowserWidth(), 
    bww = tmp[0], 
    bwh = tmp[1]; 

    for (i = 0; i < elementSel.length; i++) { 
     elementClone = elementSel[i].cloneNode(true); 
     elementClone.id = "boxID" + Math.floor((1 + Math.random()) * 0x10000); 
     elementClone.zIndex = "+1"; 

     var posx = getRandomInt(1, bww) - elementSel[i].offsetWidth; 
     var posy = getRandomInt(1, bwh) - elementSel[i].offsetHeight; 

     elementClone.style.left = posx + " px"; 
     elementClone.style.top = posy + " px"; 

     elementSel[i].appendChild(elementClone); 
     elementSel[i].classList.toggle("selected"); 

     console.log("Created " + elementSel.length + " elements."); 
    } 

Я застреваю, выполняя школьное задание. Я пробовал читать подобные вопросы, но я не понимаю. Проблема заключается в том, что не получает присвоенных новых значений. Зачем?Неисправность получения элементов div, расположенных произвольно X/Y

+0

Что делает 'getBrowserWidth()' do и return. Попробуйте поместить инструкцию 'debugger' перед' var posx = getRandomInt (1, bww) 'или добавить' console.log() 'сообщения по всему коду и проверить свою консоль браузера, чтобы отладить его. По умолчанию 'posx' и' posy' установлены на новые значения? Каково значение 'tmp'. Является ли код даже достижением «случая 116»? – Nope

+0

Как выглядит функция 'getRandomInt'? – wackozacko

+0

@ FrançoisWahl, 'posx' и' posy' установлены на новые значения. Я попытался с помощью 'console.log()'. –

ответ

0

Хорошо, я решил. Проблема была " px". Crappé!

0

Связанный ответ: Он работает для меня, возможно, причина в том, что вам необходимо изменить атрибуты position и float.

Смежные вопросы