Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   скрипт не работает - где ошибка ? (https://javascript.ru/forum/misc/57127-skript-ne-rabotaet-gde-oshibka.html)

petrovich 21.07.2015 12:02

скрипт не работает - где ошибка ?
 
на ровном месте внезапно случилась js.прострация:

оба способа выделения элемента не работают - кнопка не окрашивается в красный и онклик не навешивается

<!DOCTYPE HTML><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<title></title><style type="text/css" id="">
.класс
   {  display: block;
      width: 80px;
      height: 50px;
      border-radius: 25px;
      border: 3px solid #a7a7a7;
   }
</style><script type="text/javascript"> "use strict";

         var x = контейнер.querySelector('#имя');       // "контейнер" не определен
         var x = document.getElementById('имя');        // х === null

         x.style.background = 'red'; 
         x.onclick = function(){alert(9);};

</script> </head><body>
                        <div id='контейнер'>
                        <span id='имя' class='класс'></span>
                        </div>   
</body></html>

EmperioAf 21.07.2015 12:23

наверное потому что скрипт находится в теге <head>, а DOM-дерево ещё не построено. Попробуйте кинуть скрипт перед закрывающимся тегом <body>

petrovich 21.07.2015 13:20

на самом деле этим упрощенным примером пытался решить другую изначальную проблему -

почему то плучается выделить элемент и сменить ему элемент.style.background="";
но в следующей строке не получается повесить онклик элемент.onclick = function(){alert(9);};
при этом alert(элемент.onclick) показывает что содержимое есть

не могу понять - в каких случаях не срабатывает онклик ?

есть версии?

EmperioAf 21.07.2015 13:28

https://learn.javascript.ru/introduction-browser-events
перечитайте: мб что то найдёте там

kostyanet 22.07.2015 06:23

Цитата:

Сообщение от EmperioAf
а DOM-дерево ещё не построено

А требуемый элемент еще не дома.

Цитата:

Сообщение от petrovich
есть версии?

Есть.

petrovich 24.07.2015 14:11

ошибка как и предполагалась простая и смишная :

сверху был другой элемент который перекрывал кнопку но не имел фона и поэтому не был замечен сразу


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