Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak dostać się do id, którego nie było od początku istnienia dokumentu.
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Xeor^
Wstawiam funkcją do pewnego diva za pomocą innerHTML jakiś kod i w tym kodzie jest międzyinnymi takie coś:
<img id="obrazek" src="obrazek_1.gif">


Normalnie jak używałem tego kodu:

if(klawisz==37){obrazek.src ="obrazek_2.gif";}

gdy ten ten img o id="obrazek" był od poczatku w kodzie było wszystko dobrze, ale jak załaduję ten obrazek do diva za pomocą innnerHTML to JS obrazka o podanym id nie widzi i nie mogę na nim operować, jak się do niego dostać?
erix
Kod
var obrazek = document.getElementById('obrazek');
Xeor^
Tak masz rację to zadziała jeżeli div jest ładowany na samym początku, lecz jeżeli masz w HTML diva o id="div_1" od razu przy ładowaniu dokumentu. Jeżeli załaduję tego diva do diva o id="div_2" przez innerHTML to nie mogę się tak odwołać do niego. Masz jakieś rady?
erix
  1. <div id="asd"></div>
  2.  
  3. <a href="" onclick="document.getElementById('asd').innerHTML = '<div id='sda'>assdasd</div>'; return false;">raz</a>
  4. <a href="" onclick="alert(document.getElementById('sda').innerHTML);return false;">dwa</a>

Mi działa jakoś bez najmniejszych problemów.
Xeor^
alert(document.getElementById("obrazek").src); 

document.getElementById("obrazek").src = "images/player/4.gif";


alert(document.getElementById("obrazek").src); 



Dzięki temu widzę że mi zmienia SRC tego obrazka, lecz nie widać zmiany na stronie. Może ktoś mi też wyjasnić po co jest return false? bez tego mi nie działało to co podałeś.
erix
Cytat
Może ktoś mi też wyjasnić po co jest return false?

Żeby przeglądarka wykonała sam skrypt, bez hrefa. winksmiley.jpg
Xeor^
Dobrze, rozumiem, wyjaśnij mi jeszcze to dlaczego jak wpisuję tak:
alert(document.getElementById("obrazek").src);  - pokazuje mi poprawny src obrazka

document.getElementById("obrazek").src = "images/player/4.gif"; - podmienia


alert(document.getElementById("obrazek").src); - pokazuje zmieniony src

Ale w przeglądarce nic się nie zmienia. :/
erix
Ale u mnie naprawdę się wszystko zmienia, bez żadnych problemów...

  1. <img src="JABFE79.jpeg" id="asd" />
  2. <a href="" onclick="document.getElementById('asd').src = 'JABB40B.jpeg'; return false;">raz</a>


Sprawdzałem pod IE 6, Fx 3, Operą 9.6.
Xeor^
Dziękuję za cierpliwość, wszędzie mi działało ale w mojej funkcji nie, a to z tego powodu że przypadkowo wrzuciłem wyświetlenie obrazka zamiast po pętli to do środka i miałem ich kilka nałożonych. smile.gif Jeszcze raz dziękuję.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.