Показать сообщение отдельно
  #7 (permalink)  
Старый 24.08.2012, 16:03
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

можно просто записывать в массив добавленные элементы. какие нафиг объекты\родители?

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="UTF-8">
    <title>выпвып</title>
</head>

<body>
<button>создать новый элемент</button>
<button>удалить все</button>
<button>удалить последний</button>
<!--<button>удалить последнее действие функции go()</button>-->
<script>

    var w = window.innerWidth - 20;
    var h = window.innerHeight - 20;
    var els = [];

    function go() {
        function colorw() {
            var r = Math.floor(Math.random()*256);
            var g = Math.floor(Math.random()*256);
            var b = Math.floor(Math.random()*256);

            return "rgb(" + r + ", " + g + ", " + b + ")";
        }
        var a = document.createElement("div");
        a.style.width = "20px";
        a.style.height = "20px";
        a.style.position = "absolute";
        a.style.borderRadius = "5px";
        a.style.top = Math.round(Math.random()*h) + "px";
        a.style.left = Math.round(Math.random()*w) + "px";
        a.style.background = colorw();
        document.body.appendChild(a);
        els.push(a);
    }
  
    function remove_one () {
        if (els.length) {
            var el = els.pop();
            el.parentNode.removeChild(el);
        }
    }
  
    function remove_all () {
        while (els.length) {
          remove_one();
        }
    }
    

    var b = document.getElementsByTagName("button")[0];
    b.addEventListener("click", go, false);

    var b = document.getElementsByTagName("button")[1];
    b.addEventListener("click", remove_all, false);
  
    var b = document.getElementsByTagName("button")[2];
    b.addEventListener("click", remove_one, false);
</script>
</body>
</html>
Ответить с цитированием