Moin
Wie in vielen Spielen schon genutzt und vom Desktop her normal sind die Fenster welche man schliesen und verschieben kann. Ein Fenster (Iframe mit halb durchsichtigem Hintergrund, "Runde Ecken") etc kann ich über JS erstellen. Aber wir kann ich über JS drauf zugreifen?
Also einfach ein Fenster in der mitte welches halb durchsichtig ist wo ein X zum schliesen, ein Titel und halt eine Nachricht drinne steht die ich mit JS schreiben kann.
Googel & Co habe ich auch nur halbherzige Informationen dazu gefunden aber leider noch nichts passendes hinbekommen.
Fenster & Javascript
gepostet vor 18 Jahre, 5 Monate von The_Alien
gepostet vor 18 Jahre, 5 Monate von Drezil
bei nem normalen div kannst du es einfach über den DOM-Baum ansprechen.
Ich weiss grad nicht genau, wie iframes behandelt werden.
Wenn sie wie normale Frames behandelt werden, kann dier das helfen:
de.selfhtml.org/javascript/objekte/frames.htm#allgemeines
Ansonsten sollten die ganze normal im dom-baum angesprochen werden können, s. hier:
de.selfhtml.org/javascript/objekte/htmlelemente.htm#iframe
einfach ne id verpasssen und per document.getElementById('iframe').bla.bli.blup(foo,bar) verändern
hth
Ich weiss grad nicht genau, wie iframes behandelt werden.
Wenn sie wie normale Frames behandelt werden, kann dier das helfen:
de.selfhtml.org/javascript/objekte/frames.htm#allgemeines
Ansonsten sollten die ganze normal im dom-baum angesprochen werden können, s. hier:
de.selfhtml.org/javascript/objekte/htmlelemente.htm#iframe
einfach ne id verpasssen und per document.getElementById('iframe').bla.bli.blup(foo,bar) verändern
hth
gepostet vor 18 Jahre, 5 Monate von LeoManiac
Iframe? du brauchst dafür kein Iframe
Nimm ne 2 Zeilige Tabelle (obere Zeile Titel + schliesen, untere Zeile Body) bei der unteren Zeile setzt den Style einfach auf overflow: auto (dadurch wirkts wie n Iframe) und fertig n bißchen Javascript noch dazu und du hast dein Overlayfenster.
Wenn du es dann durchsichtig machen willst brauchst noch 2 Styles
filter: Alpha(opacity=85);
-moz-opacity: 0.85;
1. Zeile fürn IE
2. Zeile fürn Firefox
Nimm ne 2 Zeilige Tabelle (obere Zeile Titel + schliesen, untere Zeile Body) bei der unteren Zeile setzt den Style einfach auf overflow: auto (dadurch wirkts wie n Iframe) und fertig n bißchen Javascript noch dazu und du hast dein Overlayfenster.
Wenn du es dann durchsichtig machen willst brauchst noch 2 Styles
filter: Alpha(opacity=85);
-moz-opacity: 0.85;
1. Zeile fürn IE
2. Zeile fürn Firefox
gepostet vor 18 Jahre, 5 Monate von knalli
Ich habe ne Demo, derzeit allerdings nur glaub ich nur DOM2.. funktioniert also mit keinem IE (sondern nur in meinem Entwicklungsbrowser FF 1.5)
projects.knallisworld.de/kspy3/
projects.knallisworld.de/kspy3/
gepostet vor 18 Jahre, 5 Monate von LeoManiac
Da geht doch schon viel zu zweit aber irgendwas läuft da bei dir ned vernünftig ist viel zu langsam
[edit] ah es waren noch ned alle overlays da
[edit] ah es waren noch ned alle overlays da
gepostet vor 18 Jahre, 5 Monate von The_Alien
Hm - das mit der Tabelle will nicht so richtig - der restliche Fnsterinhalt wird immernoch nach unter verschoben.
Und wie man mit JS auf IFrames zugreifen kann weiß ich auch noch nicht.
Geht das überhaupt? Habe mal den Satz gelesen das man nur über das src Attribut dem IFrame eine Seite zuweisen kann und das es die einzige Möglichkeit wäre dem IFrame einen Inhalt zu geben.
Und wie man mit JS auf IFrames zugreifen kann weiß ich auch noch nicht.
Geht das überhaupt? Habe mal den Satz gelesen das man nur über das src Attribut dem IFrame eine Seite zuweisen kann und das es die einzige Möglichkeit wäre dem IFrame einen Inhalt zu geben.
gepostet vor 18 Jahre, 5 Monate von Cays
Ich habe mal genau danach gefragt..
Habe zwar diverse "Lösungsmöglichkeiten" bekommen, allerdings hat ncihts geholfen!
War auch hier im Anfängerforum...
MfG.Cays
Habe zwar diverse "Lösungsmöglichkeiten" bekommen, allerdings hat ncihts geholfen!
War auch hier im Anfängerforum...
MfG.Cays
gepostet vor 18 Jahre, 5 Monate von knalli
Selbstverständlich.. ein Frame ist ein Frame, und ein Frame bezieht seinen Inhalt über eine Quelle (Source, src).
Will man eigenen Kram einbinden, so nimmt man ein Div (respektive ein beliebiges HTML-Tag) und bindet den Inhalt ein; dies geht entweder über das properitäre Attribut innerHTML (stammt von MSIE/MS, können aber heute die meisten anderen Browser auch) oder korrekt über einen XML-Baum (DOM).
Bei meiner Demo ist derzeit quasi beides vorhanden; das Fenster wird per DOM aufgebaut, der eigentliche Inhalt des Frames (also des Inhalts des Fensters, nicht Titel o.ä.) wird aber derzeit noch per innerHTML eingebunden. Später soll das geparst werden (Hintergrund: Der Inhalt wird dynamisch geladen).
Will man eigenen Kram einbinden, so nimmt man ein Div (respektive ein beliebiges HTML-Tag) und bindet den Inhalt ein; dies geht entweder über das properitäre Attribut innerHTML (stammt von MSIE/MS, können aber heute die meisten anderen Browser auch) oder korrekt über einen XML-Baum (DOM).
Bei meiner Demo ist derzeit quasi beides vorhanden; das Fenster wird per DOM aufgebaut, der eigentliche Inhalt des Frames (also des Inhalts des Fensters, nicht Titel o.ä.) wird aber derzeit noch per innerHTML eingebunden. Später soll das geparst werden (Hintergrund: Der Inhalt wird dynamisch geladen).
gepostet vor 18 Jahre, 5 Monate von The_Alien
Hm - ich habe dem IFrame eine ID gegeben. Wenn ich allerdings über innerHTML darauf zugreifen will kommt die Fehlermeldung das das Object diese Eigenschaft nicht unterstütz. Vielleicht bin ich auch nur mal wieder doof und stehe mir auf dem Schlauch. Hast du evtl ein kleines bsp?
gepostet vor 18 Jahre, 5 Monate von knalli
Ähm.. Lesen ist schwer, gell?
Ich wiederhole mich: Ein Frame bezieht seinen Inhalt _nur_ durch das src-Attribut, nur nur nur.. das heißt tatsächlich mit anderen Worten, dass innerHTML nicht funktioniert, ehrlich..
Selbstverständlich.. ein Frame ist ein Frame, und ein Frame bezieht seinen Inhalt über eine Quelle (Source, src).
Will man eigenen Kram einbinden, so nimmt man ein Div (respektive ein beliebiges HTML-Tag) und bindet den Inhalt ein;
Ich wiederhole mich: Ein Frame bezieht seinen Inhalt _nur_ durch das src-Attribut, nur nur nur.. das heißt tatsächlich mit anderen Worten, dass innerHTML nicht funktioniert, ehrlich..
Selbstverständlich.. ein Frame ist ein Frame, und ein Frame bezieht seinen Inhalt über eine Quelle (Source, src).
Will man eigenen Kram einbinden, so nimmt man ein Div (respektive ein beliebiges HTML-Tag) und bindet den Inhalt ein;
gepostet vor 18 Jahre, 5 Monate von The_Alien
Sry - dann habe ich es falsch verstanden gehabt. Habe es jetzt über cookies gelöst. Hauptfenster - Cookies setzen und im IFrame auslesen. Nur weiß ich noch nicht wie ich das mit den Rückmeldungen an die Hauptseite über JS machen kann (wenn ich Buttons einbauen will).
gepostet vor 18 Jahre, 5 Monate von knalli
Ehrlich gesagt schnall ich das nicht.. oder euch fehlt jeglicher Nutzkenntnis von JavaScript.
Was genau versuchst du realisieren?
Was genau versuchst du realisieren?
gepostet vor 18 Jahre, 5 Monate von LeoManiac
Ich würd eher sagen Javascript/HTML Grundlagen erlernen wäre hier eher angebracht..
Javascript
www.galileocomputing.de/openbook/javascript/
Ajax
developer.mozilla.org/de/docs/AJAX:Getting_Started
www.ajax-community.de/
HTML/JS DOM
de.selfhtml.org/dhtml/modelle/dom.htm
www.w3schools.com/htmldom/default.asp
www.w3schools.com/js/js_obj_htmldom.asp
Javascript
www.galileocomputing.de/openbook/javascript/
Ajax
developer.mozilla.org/de/docs/AJAX:Getting_Started
www.ajax-community.de/
HTML/JS DOM
de.selfhtml.org/dhtml/modelle/dom.htm
www.w3schools.com/htmldom/default.asp
www.w3schools.com/js/js_obj_htmldom.asp
gepostet vor 18 Jahre, 5 Monate von The_Alien
Das Problem ist das es keine über/untergeordeten Frames (also auch kein parent,top etc) gibt. Aber egal - mit dem zwischenspeichern in den Cookies geht soweit.
gepostet vor 18 Jahre, 5 Monate von blum
@alien: kein mensch redet hier von frames. frames sind sowieso der letzte albtraum.
les dir einfach nochmal die anderen beiträge durch, glaub du hast die vorschläge nicht richtig verstanden.
les dir einfach nochmal die anderen beiträge durch, glaub du hast die vorschläge nicht richtig verstanden.
gepostet vor 18 Jahre, 5 Monate von knalli
Zunächst: dito @blum
Und dann: Was machst du, wenn du einen paranoiden User hast, der irgendwo gelesen hat, das Cookies immer böse wären und sie deshalb immer blockt?
Weil wenn du dann noch hingehst, und den User aufforderst, dafür Cookies zu erlauben.. ne also, sry..
Und dann: Was machst du, wenn du einen paranoiden User hast, der irgendwo gelesen hat, das Cookies immer böse wären und sie deshalb immer blockt?
Weil wenn du dann noch hingehst, und den User aufforderst, dafür Cookies zu erlauben.. ne also, sry..
gepostet vor 18 Jahre, 5 Monate von zufall_
also wenn es umbedingt ein sein muss und auf keinen fall ein sein darf, dann muss man darauf achten, das die "src" des iframes im selben verzeichniss wie die "elter" seite liegt. dann kann man alles mit dem iframe machen, was man will.
iframe-demo
iframe-demo
gepostet vor 18 Jahre, 5 Monate von knalli
Original von zufall_
also wenn es umbedingt ein sein muss und auf keinen fall ein sein darf, dann muss man darauf achten, das die "src" des iframes im selben verzeichniss wie die "elter" seite liegt. dann kann man alles mit dem iframe machen, was man will.
iframe-demo
Mit welcher Begründung? Warum sollten andere relative Positionen nicht funktionieren?
gepostet vor 18 Jahre, 5 Monate von zufall_
wird so bei de.selfhtml.org beschrieben. man kann es aber auch ausprobieren.
aktuell.de.selfhtml.org/tippstricks/javascript/fensterzugriff/index.htm#links (Abschnitt "Beachten Sie:")
aktuell.de.selfhtml.org/tippstricks/javascript/fensterzugriff/index.htm#links (Abschnitt "Beachten Sie:")
gepostet vor 18 Jahre, 5 Monate von knalli
Ich lese dort nur etwas von der Domainübergreifenden Sperre, ähnlich der "Ajaxblockade".
Wo genau steht da, dass die Datei keinen anderen Pfad haben darf?
Wo genau steht da, dass die Datei keinen anderen Pfad haben darf?
gepostet vor 18 Jahre, 5 Monate von zufall_
ok, du hast recht.
weil es vorhin bei einem test nicht hingehauen hat, bin ich davon ausgegangen das es auch das gleiche verzeichniss sein muß. es ist aber definitiv nur die gleiche domain.
ändert aber nichts an der tatsache, das man ein iframe fast wie ein div verwenden kann. wobei ich immer noch nicht weiss warum man das machen sollte.
ich bastel im moment an einer schlanken Fensterklasse um dynamisch ein paar infofenster zu erzeugen. wird noch etwas dauern, bis sie fertig ist aber sowas ist sicher die elegantere lösung.
weil es vorhin bei einem test nicht hingehauen hat, bin ich davon ausgegangen das es auch das gleiche verzeichniss sein muß. es ist aber definitiv nur die gleiche domain.
ändert aber nichts an der tatsache, das man ein iframe fast wie ein div verwenden kann. wobei ich immer noch nicht weiss warum man das machen sollte.
ich bastel im moment an einer schlanken Fensterklasse um dynamisch ein paar infofenster zu erzeugen. wird noch etwas dauern, bis sie fertig ist aber sowas ist sicher die elegantere lösung.
gepostet vor 18 Jahre, 5 Monate von knalli
Du hast meine auch schon gesehen?
gepostet vor 18 Jahre, 5 Monate von zufall_
nein, habe ich nicht. wo finde ich die?
gepostet vor 18 Jahre, 5 Monate von knalli
Original von knalli
Ich habe ne Demo, derzeit allerdings nur glaub ich nur DOM2.. funktioniert also mit keinem IE (sondern nur in meinem Entwicklungsbrowser FF 1.5)
projects.knallisworld.de/kspy3/
gepostet vor 18 Jahre, 5 Monate von Klaus
Die ist absolut klasse! Wirst du die vielleicht in absehbarer in einer kompatibleren version anbieten oder gibt es bereits etwas von ähnlicher Qualität?
BTW: wie verhinderst du das auftreten der Scrolleisten?
BTW: wie verhinderst du das auftreten der Scrolleisten?
gepostet vor 18 Jahre, 5 Monate von knalli
Naja, erstmal DOM2.. ob ich dann wieder Fallbacks einbaue, weiß ich nicht.. da ich Klausuren habe, läuft mein Projekt, wo ich das ganze brauche, aber eh schleppend^^
Wieso keine Scrollleisten? Hm.. wieso sollten Scrollleisten auftauchen?
Wieso keine Scrollleisten? Hm.. wieso sollten Scrollleisten auftauchen?
gepostet vor 18 Jahre, 5 Monate von zufall_
ah, ich musste mir die aktuellste version von firefox holen. da kann ich mich lange über eine leere seite wundern *gg*. das ist aber höllisch langsam, oder?
ich will eine "schlanke" fensterklasse die nach möglichkeit browserunabhängig funktioniert. das soll nur für kleine infofenster dienen und leicht nachvollziehbar sein.
ich will eine "schlanke" fensterklasse die nach möglichkeit browserunabhängig funktioniert. das soll nur für kleine infofenster dienen und leicht nachvollziehbar sein.
gepostet vor 18 Jahre, 5 Monate von knalli
Wie gesagt.. ich nutze derzeit DOM 2
Schätzungsweise kommt dann FF 1.0.x damit nicht zurecht *notier*
Langsam ist das eigentlich nur, weil ich 5-6 Fenster gleichzeitig mit Effekten versehen einblende lasse.. das zieht halt was an Ressourcen
Schätzungsweise kommt dann FF 1.0.x damit nicht zurecht *notier*
Langsam ist das eigentlich nur, weil ich 5-6 Fenster gleichzeitig mit Effekten versehen einblende lasse.. das zieht halt was an Ressourcen
gepostet vor 18 Jahre, 5 Monate von Klaus
Original von knalli
Wieso keine Scrollleisten? Hm.. wieso sollten Scrollleisten auftauchen?
Wenn ich einen Container aus dem Bild schiebe müsste der Browser eigentlich Scrolleisten anbieten. *grübel*
gepostet vor 18 Jahre, 5 Monate von knalli
Stimmt.. jetzt wo du es sagst.
Das verhindert man, indem man den Body (ich habe das mal als "Desktop" deklariert) fixiert.. also in diesem Fall: css: body: overflow:hidden;
Das verhindert man, indem man den Body (ich habe das mal als "Desktop" deklariert) fixiert.. also in diesem Fall: css: body: overflow:hidden;