Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Событие загрузки отдельного элемента (https://javascript.ru/forum/events/49817-sobytie-zagruzki-otdelnogo-ehlementa.html)

Dimaz 29.08.2014 15:46

Событие загрузки отдельного элемента
 
Как изменить цвет элемента сразу после его загрузки на страницу? Если поставить событие window.onload, тогда цвет меняется только после полной загрузки страницы. Можно ли сделать, чтобы цвет изменился сразу? Хотелось бы без использования библиотек.
var elem = document.getElementById('title');
elem.style.color = "red";

Safort 29.08.2014 16:26

Честно говоря не знаю трушного способа. Единственный вариант, который могу предложить, так это обращение к элементу сразу после его объявления.
<div class="my-class">
</div>
<script>
var el = document.querySelector('.my-class');
el.style.color = "red";
</script>

WorM32 29.08.2014 16:29

Использовать CSS.

.my-class {
  color: red;
}

Dimaz 29.08.2014 16:59

Цитата:

Сообщение от Safort (Сообщение 328108)
Честно говоря не знаю трушного способа. Единственный вариант, который могу предложить, так это обращение к элементу сразу после его объявления.
<div class="my-class">
</div>
<script>
var el = document.querySelector('.my-class');
el.style.color = "red";
</script>

Все равно сначала грузится изначальное значение. Помимо цвета нужно поменять еще и текст, поэтому использовать CSS не получится.

WorM32 29.08.2014 17:00

Специально для извращенцев есть document.write.

Safort 29.08.2014 17:13

Dimaz,
видимо, ты перепутал цитаты, у меня CSS не используется)

BETEPAH 29.08.2014 17:20

Цитата:

Сообщение от Dimaz
Как изменить цвет элемента сразу после его загрузки на страницу?

поставить изменение цвета в следующую строку после загрузки элемента.

Dimaz 29.08.2014 19:19

Цитата:

Сообщение от BETEPAH (Сообщение 328121)
поставить изменение цвета в следующую строку после загрузки элемента.

элемент находится на стороннем сайте. Я делаю расширение для браузера

Dimaz 29.08.2014 19:31

может выполнять document.getElementById('title') до тех пор, пока элемент не будет найден? Как это сделать?
function find(){
  var elem = document.getElementById("title");
  if(elem==undefined) //выполнить поиск еще раз. Как это сделать?
  else alert("Элемент найден"); //выполняем нужные действия с элементом
}

Safort 29.08.2014 19:58

Dimaz,
так setInterval/setTimeout же.


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