php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 28-06-2009, 16:16
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard innerHTML und innerText geht nicht?

bla soll einfach nur durch test ersetzt werden.
bei mir kommt aber immer die fehlermeldung:
Uncaught TypeError: Cannot set property 'innerText' of null
bzw
Uncaught TypeError: Cannot set property 'innerHTML' of null

Code:
<script language='javascript'>
document.getElementById('test').innerText = 'test';
</script>

<span id='test'>bla</span>";
geht immer noch nicht wenn ich oben innerText mit innerHTML tausche
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #2 (permalink)  
Alt 28-06-2009, 16:35
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Du willst auf das Element 'test' zugreifen, bevor es überhaupt erstellt ist.

So gehts:
Code:
<html>
<head>
<title>foobar</title>
<script type="text/javascript">
window.onload = function() {
    document.getElementById('test').innerHTML = 'test';
}
</script>
</head>
<body>
<span id="test">bla</span>
</body>
</html>
Mit Zitat antworten
  #3 (permalink)  
Alt 28-06-2009, 16:40
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

achso alles klar -.-
danke vielmals.
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #4 (permalink)  
Alt 28-06-2009, 16:41
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Wenn das wirklich alles ist, was du an Code hast, und er auch in dieser Reihenfolge steht - dann versuchst du auf das Element zuzugreifen, bevor es überhaupt existiert.

Entweder SCRIPT hinter dem Element notieren; oder das Laden des Dokuments* abwarten (load-Event), bzw. das Vorhandensein des vollständigen DOM, Stichwort domready.


* und aller eingebundener externer Ressourcen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 29-06-2009, 17:06
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

jo danke für die Hilfe. Ich schreib einfach das <script> dahinter
hab aber jetzt noch nen problem.

meine js datei wo alle funktionen stehen (wird im head der seite extern eingebunden)
Code:
function changeinhalt(obj,time,wert) {
  aktuell = document.getElementById(obj).innerHTML;
  neu = Math.round((Number(aktuell)+wert)*100) / 100;
  document.getElementById(obj).innerHTML = neu;
  setTimeout(changeinhalt(obj,time,wert), time);
}
meine php datei (abgekürzt):
Code:
echo "<span id='2'>100</span>km";

echo "<script language='javascript'>changeinhalt('2',1000,-1);</script>";
geht irgendwie nicht.
er soll sozusagen jede sekunden 1 runter zählen un das dann in dem <span> anzeigen.
aber der wert zwischen <span></span> bleibt bei mir einfach leer.
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #6 (permalink)  
Alt 29-06-2009, 17:16
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.578
h3ll befindet sich auf einem aufstrebenden Ast
Standard

setTimeout(changeinhalt(obj,time,wert), time)

Das ist eine schöne Endlosschleife, weil du die Funktion jedesmal sofort bei der Zuweisung aufrufst.
Mit Zitat antworten
  #7 (permalink)  
Alt 29-06-2009, 17:21
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Abgesehen davon, dass "2" kein gültiger ID-Wert ist - sind alle Variableninhalte ab dem zweiten Aufruf "weg", weil dieser im Kontext von window ausgeführt wird.

Closures bieten dafür eine Lösung.
Organisation von JavaScripten


@h3ll: Stimmt, das kommt noch hinzu, ganz übersehen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.

Geändert von wahsaga (29-06-2009 um 17:25 Uhr)
Mit Zitat antworten
  #8 (permalink)  
Alt 29-06-2009, 17:35
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

oh ja mit der id das stimmt aber die verwende ich auch nich ^^ bei mir heißt die anders wollte nur zur übersichtlichkeit hier was kurzes nehmen aber da hast du natürlich recht da hab ich nich dran gedacht.
der rest verwirrt mich etwas - muss ich das so kompliziert machen?
gibt es denn nicht nen simples codeschnippselchen was mein problem löst?

ich will einfach nur in dem code:
Code:
echo "<span id='test'>100</span>km";
das alle "time" sekunden die 100 um "wert" verändert wird.
deswegen hatte ich mir die funktion angelegt:
Code:
function changeinhalt(obj,wert,time) {
  aktuell = document.getElementById(obj).innerHTML;
  neu = Math.round((Number(aktuell)+wert)*100) / 100;
  document.getElementById(obj).innerHTML = neu;
  document.setTimeout(changeinhalt(obj,wert,time), time);
}
um die funktion nun noch zu starten habe ich einfach nach dem <span> das:
Code:
echo "<script language='javascript'>changeinhalt('test',-2.9,1000);</script>";
eingefügt.

was müsste ich denn nun verändern damit es hinhaut?
hoffe ihr versteht was ich meine. ich denke nicht das mein problem so schwer zu lösen ist oder?
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #9 (permalink)  
Alt 29-06-2009, 18:00
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also es muss doch eig nur an der zeile was faul sein oder:
Code:
document.setTimeout(changeinhalt(obj,wert,time), time);
weil wenn ich die wegnehme macht er ja den ganzen vorgang einmal. also geht das. wie muss ich das oben abändern das genau die funktion mit den parametern nochmal aufgerufen wird? also alle "time" sekunden
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #10 (permalink)  
Alt 29-06-2009, 18:05
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ok nach mehreren recherchen und nem tipp von nem kumpel bin ich jezt auf das gestoßen:
Code:
setTimeout(function(){changeinhalt(obj,wert,time);}, time);
ka warum man das so schreiben muss aber es geht
danke trotzdem!
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
  #11 (permalink)  
Alt 29-06-2009, 18:08
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Besth Beitrag anzeigen
also es muss doch eig nur an der zeile was faul sein oder
Das sagte h3ll doch bereits!

Zitat:
wie muss ich das oben abändern das genau die funktion mit den parametern nochmal aufgerufen wird?
Wenn du den Noob-Weg wählen willst - dann bastelst du dir einfach den Code für den Funktionsauruf inkl. jeweils aktueller Parameter-Werte als String zusammen, und nutzt diesen String als ersten Parameter für setTimeout;
oder du nutzt globale Variablen.

Oder aber, du investierst etwas mehr Zeit und Aufwand, und liest dir den von mir verlinkten Artikel mal durch - und entwickelst daraus dann eine vernünftige, zeitgemäße Lösung.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #12 (permalink)  
Alt 29-06-2009, 18:09
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Besth Beitrag anzeigen
ka warum man das so schreiben muss aber es geht
Weil genau das eine Nutzung von Closures darstellt, du Vogel ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #13 (permalink)  
Alt 29-06-2009, 18:37
Besth
 Registrierter Benutzer
Links : Onlinestatus : Besth ist offline
Registriert seit: Mar 2006
Beiträge: 249
Besth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ja ich habs mir durchgelesen aber nicht verstanden ... "du vogel"
und klar sagte h3ll
Zitat:
setTimeout(changeinhalt(obj,time,wert), time)
Das ist eine schöne Endlosschleife, weil du die Funktion jedesmal sofort bei der Zuweisung aufrufst.
aber damit konnte ich leider nicht viel anfangen weil ich ja wissen wollte WAS falsch ist.
aber trotzdem danke
__________________
Mess with the Besth, die like the rest!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mailversand geht und geht wieder nicht Master0Blicker PHP Developer Forum 6 04-07-2007 21:01
hidden feld per dropdown setzen (FF geht, IE geht nicht) Schlafmütze HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 5 01-06-2006 13:49
Geister im Script? Firefox geht, Inet Explorer geht nicht derEini Tutorials 32 17-02-2006 11:20
Warum geht das nicht ? - fast identischer SQL Befehl geht .. syco23 SQL / Datenbanken 10 10-07-2003 19:54
es geht und geht doch nicht whoda SQL / Datenbanken 3 14-02-2003 18:52

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:45 Uhr.