Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   игра че то неработает (https://javascript.ru/forum/misc/62303-igra-che-nerabotaet.html)

y_taras 03.04.2016 22:29

игра че то неработает
 
Подскажите где ошибка. Задание - надо чтоб function generateFaces() загрузила риснки. Потом обработчик событй ловит что нажмут. Если последнйи елемнет то добавляет еще рисунков если нет - конец игры.
<body>
    <h1>Matching Game</h1>
    <p>
        Click on the extra smiling face on the left.
    </p>
    <div id="leftSide"></div>
    <div id="rightSide"></div>
    <script type="text/javascript">

    document.body.onload = generateFaces();

    var numberOfFaces = 5;
    var theLeftSide = document.getElementById("leftSide");
    var theRightSide = document.getElementById("rightSide");
    
    var theBody = document.getElementsByTagName("body")[0];

    function generateFaces() {
        for (var i = 0; i < numberOfFaces; i++) {
            var img = document.createElement("img");
            img.src = "img/smile.png";
            img.style.top = Math.floor(Math.random() * 400) + "px";
            img.style.left = Math.floor(Math.random() * 400) + "px";
            theLeftSide.appendChild(img);
        }
        var leftSideImages = theLeftSide.cloneNode(true);
        leftSideImages.removeChild(leftSideImages.lastChild);
        theRightSide.appendChild(leftSideImages);
    }

    theLeftSide.lastChild.onclick = function nextLevel(event) {
        event.stopPropagation();
        numberOfFaces += 5;
        generateFaces();
    };

    theBody.onclick = function gameOver() {
        alert("Game Over!");
        theBody.onclick = null;
        theLeftSide.lastChild.onclick = null;
    };
    </script>

рони 03.04.2016 23:34

y_taras,
строку 10 убрать.
в строку 30 добавить generateFaces();

y_taras 03.04.2016 23:40

спасибо за помощь тепер буду разбираться а почему так работает

рони 03.04.2016 23:43

y_taras,
иначе для строки 31 нет элемента lastChild


Часовой пояс GMT +3, время: 23:35.