tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
929
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    diggity diggity ist offline Mitglied Gold
    Registriert seit
    Dec 2003
    Beiträge
    227
    Hallo Leute,

    Auf meiner Seite lade ich mittels Javascript Inhalte herein. Nun habe ich das Problem dass ich in diesem dynamisch geladenen Inhalt nicht mehr mit Javascript auf den hereingeladenen Content bzw dessen HTML Elemente zugreifen kann.

    Ein Beispiel des hereingeladenen Codes:
    HTML-Code:
    <script type="text/javascript"> 
    	$(document).ready(function() {
    		$("div#test").css("visibility", "hidden");
    	});		
    </script>
    <div id="test">test</div>
    Das soll nur veranschaulichen auf was ich hinaus will. Ich bekomm keinerlei JS Errors, es passiert einfach nichts.
    Wenn ich mir mit alert($("div#test").html()) den Inhalt des Divs ausgeben lasse, bekomm ich "null" zurück.

    Gibts da irgend eine Möglichkeit wie man das umgehen bzw lösen kann? Es liegt doch daran dass dieser Quelltext nicht direkt im Dokument steht sondern erst nachher hereingeladen wurde, oder täusche ich mich da?
    Geändert von diggity (24.03.07 um 13:08 Uhr)
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Also wenn du den JS-Code dort auch nachträglich lädst, bringt dir das nichts.
    ready() feuert beim onload des Dokumentes, und das war schätzungsweise bevor du den JS-Code hereingeladen hast.
     

  3. #3
    diggity diggity ist offline Mitglied Gold
    Registriert seit
    Dec 2003
    Beiträge
    227
    Diese Vermutung hatte ich am Anfang auch, doch wenn ich das JS im statischen Quelltext der Seite platziere, funktionierts auch nicht.
     

  4. #4
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Auch dann feuert onload zu früh, weil das <div> erst später vorhanden sein wird.
     

  5. #5
    diggity diggity ist offline Mitglied Gold
    Registriert seit
    Dec 2003
    Beiträge
    227
    Stimmt
    Gibts für sowas irgend eine Lösung?
     

  6. #6
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Hast du es schon mal so probiert?:
    Code :
    1
    2
    3
    4
    
    <div id="test">test</div>
    <script type="text/javascript"> 
            $("div#test").css("visibility", "hidden");
    </script>
    Wenn du das <div> vor dem Skript platzierst, welches darauf zugreift, brauchst du nicht auf den onload-Event warten.
    Ein Dokument wird von oben nach unten abgearbeitet, somit weisst du dann ja, dass das <div> schon da ist.
     

  7. #7
    diggity diggity ist offline Mitglied Gold
    Registriert seit
    Dec 2003
    Beiträge
    227
    Genial... es funktioniert tatsächlich wenn man's drunter schreibt.

    Beispiel:

    HTML-Code:
    {section name=item loop=$messages}			
    	<div id="message_{$messages[item].id}" class="msg dropaccept">
    		<span class="check"><input class="checkbox" type="checkbox" name="check[{$messages[item].id}]" /></span>
    		<span class="icon">Icon</span>
    		<span class="sender"><a href="{make_url module=vcard user=`$messages[item].sender_name`}">{$messages[item].sender_name}</a></span>
            <span class="drag">&nbsp;</span>
    		<span class="subject">{$messages[item].subject|truncate:45}</span>
    		<span class="date">{$messages[item].timestmp|date_format:"%d.%m.%Y %H:%M"}</span>
    		<p class="clear"></p>
    	</div>	
    	<script type="text/javascript">
    		$(document).ready(function() {ldelim}		
    			$("#message_{$messages[item].id}").Draggable({ldelim}				
    				revert: true
    			{rdelim});
    		{rdelim});
    	</script>
    {/section}
    Ohne dem ready() Event funktionierts nur im Firefox, im IE kommt da ein Fehler dass der Vorgang abgebrochen wurde... aber wenigstens funktionierts jetzt.
    Danke dir!
     

Ähnliche Themen

  1. Eclipse, wie Javascript Content Assist in html Files
    Von kilobit im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 04.08.10, 10:15
  2. Antworten: 4
    Letzter Beitrag: 30.12.08, 15:35
  3. Antworten: 18
    Letzter Beitrag: 10.01.05, 19:40
  4. [Flash 5] - Szene in geladenem swf ansprechen
    Von websista im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 25.08.04, 13:14
  5. dynamisch html-elemente dynamisch ansprechen
    Von TaJ im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 04.10.02, 16:33