"virtuelle" fenster mit javascript
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
beispiel
beweglichen fenstern
code
dank
datei
design
dialog
editor
erstellen
fenster
grad
header
http
index
internet
not
parameter
position
post
url
-
hallo!
ich weiß nicht genau, wie ich meine frage formulieren soll, das sie auch jeder kapiert
also, ich hab, wie manche ja schon wissen, auf meiner hp ein forum. (http://dynamicdesigns.dy.funpic.de/index.php?go=5&id=2)
nun will ich es so machen, das sich zum erstellen eines beitrag sich ein fenster öffnet. es soll aber kein browser-fenster, sondern ein durch javascript "erstelltes" "virtuelles fenster" sein. sowas gibts zum beispiel beim neuen Yahoo!Mail. aber sonst weiß ich nix, wo ich mal ein beispiel zeigen kann. ich hoffe, ihr wisst, was ich meine!
grüße, dd -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Diese virtuellen Fenster, wie du sie nennst, sind DIVs, die im Z-Index ganz vorne liegen und eine statische Position haben. Entweder legst du diese durch JS erst an, oder schreibst sie direkt in deinen HTML-Code, setzt sie aber auf visibility=hidden. Durch JS setzt du im zweiten Fall einfach visibility=visible.
EDIT: Mach mal bitte den BOM oben links bei deiner Homepage weg.
Beitrag zuletzt geändert: 24.8.2009 17:47:52 von census -
das mit dem bom hab ich schon probiert!
wie kann ich es dann machen, das das fenster beim scrollen trotzdem auf der selben position des screens bleibt? -
dynamic-designs schrieb:
das mit dem bom hab ich schon probiert!
Lösch doch einfach die ersten drei Zeichen deiner Seiten weg.
dynamic-designs schrieb:
wie kann ich es dann machen, das das fenster beim scrollen trotzdem auf der selben position des screens bleibt?
position:fixed
-
wenns so einfach wäre...
das geht nicht. die sind zwar im quelltext, aber nicht im code selber (quelltext wird mit php generiert). ich hab schon alles probiert, aber nix hat geklappt. ich glaub eigentlich auch nicht, das das ein bom ist, hab ich nähmlich abgestellt in den einstellungen von dreamweaver 9 -
das hab ich gemacht! hab es ca. 10x überprüft. hab auch alle dateien gelöscht und neu angelegt.
-
Irgendwas machst Du aber noch immer falsch, sonst wäre das BOM weg.
Welchen Editor nutzt Du denn überhaupt?
FF -
fatfreddy schrieb:
Irgendwas machst Du aber noch immer falsch, sonst wäre das BOM weg.
Welchen Editor nutzt Du denn überhaupt?
FF
dreamweaver 9 -
Mit Dreamweaver kenn ich mich nicht aus, da kann eventuell jemand anderes helfen. Mein Rat: Schmeiß den mal weg und speichere deine Dateien mit Notepad++ (Format-> Kodiere als ANSI, und das Häkchen bei Kodiere als UTF-8 (ohne BOM) setzen! ). Dann sollte das Problem behoben sein.
FF -
so, jetzt sind sie weg...
und nun zurück zum thema:
ich weiß nicht so recht, wie ich das machen soll mit den fenstern. hab noch nicht soviel erfahrung mit js=>ajax. ja, sollte mit ajax gemacht sein, um ladezeiten zu verkürzen. kann mir jemand helfen?
grüße, dd
edit: hier mal ein beispiel:
http://dynamic-designs.lima-city.de/vf.png
Beitrag zuletzt geändert: 28.8.2009 0:33:18 von dynamic-designs -
Hallo.
Schau doch mal hier:
http://jqueryui.com/demos/dialog/
müsste ewentuell das sein was Du suchst?
-
Ach menno, damit hab ich damals so viel rumgespielt :D So mit "Beweglichen" Fenstern und so... Fenster Dynamisch mit Ajax geladen und so ^^
Hier nochmal ein Beispiel:
http://nerdinator.lima-city.de/dev/vesicha/
Beitrag zuletzt geändert: 28.8.2009 1:15:31 von nerdinator -
also, wenn du ein ajax-code für mich hättest, hätte ich nichts dagegen. ich hab da (noch) nicht so viel ahnung von ajax.
-
Also ich verwende der einfachheit halber gerne Frameworks (Wie beispielsweise scriptaculo.us, Prototype, etc.)
Sowas vereinfacht den Umgang extrem. Alles weitere kannst du dir dann ja via Firebug o.ä. auf meiner Seite anschauen ^^
Hier mal eben der "relevante" Inhalt meiner "core.js":
Sicher ne Menge Müll mit drin, aber das sind halt so die standard-funktionen, wie Fenster erstellen, Fenster zerstören, etc... Läuft aber halt alles nur mit den oben angesprochenen Frameworks. Und ist halt alles auf "Dynamisch" ausgelegt. Also dynamische Fenster-ID's usw... Damit man auch mehr als nur ein Fenster damit öffnen kann ^^var WindowId = 0; var MaxZIndex = 5; var WindowIds = new Array(); function NewWindow(WindowContent, WindowTitle, WindowWidth, WindowHeight, HasHeader, HelpId, HasClose, HasMinimize, Options, AppearDuration) { WindowId++; var NewWindow = document.createElement("DIV"); var WindowName = "Window_" + WindowId; NewWindow.id = WindowName; WindowIds[WindowId] = WindowContent; NewWindow.setAttribute('class','Window'); NewWindow.style.opacity = 0; $('main_window').appendChild(NewWindow); NewWindow.style.zIndex = MaxZIndex++; new Effect.Appear($(WindowName),{duration:AppearDuration}); if(typeof WindowHeight!="undefined") { NewWindow.style.height = WindowHeight; } if(typeof WindowWidth!="undefined") { NewWindow.style.width = WindowWidth; } if(HasHeader==1) { var NewHeader = document.createElement("DIV"); var HeaderName = WindowContent + "_header_" + WindowId; NewHeader.id = HeaderName; NewHeader.setAttribute('class','Header'); new Ajax.Request( 'header.php', { method: 'post', parameters: 'content=' + WindowContent + '&title=' + WindowTitle + '&help=' + HelpId + '&HasClose=' + HasClose + '&HasMinimize=' + HasMinimize + '&WindowIndex=' + WindowId + "&" + Options, onComplete: function(response){ $(HeaderName).innerHTML += response.responseText; } } ); $(WindowName).appendChild(NewHeader); new Draggable(WindowName, { onStart: function(d,m){d.element.style.zIndex = MaxZIndex++}, handle: HeaderName, ghosting: false , snap: [1,1], zindex: false }); } var NewContent = document.createElement("DIV"); var ContentName = WindowContent + "_content_"+WindowId; NewContent.id = ContentName; NewContent.setAttribute('class','Content'); new Ajax.Request( 'load.php', { method: 'post', parameters: 'content=' + WindowContent + '&title=' + WindowTitle + '&help=' + HelpId + '&HasClose=' + HasClose + '&HasMinimize=' + HasMinimize + '&WindowIndex=' + WindowId + "&" + Options, onComplete: function(response){ $(ContentName).innerHTML += response.responseText; } } ); $(WindowName).appendChild(NewContent); } function DestroyWindow(id) { new Effect.Fade('Window_'+id,{duration:0.25,afterFinish: function(){$('main_window').removeChild($('Window_'+id));}}); } function AccessPHP(filename, Param) { var TempWindow = document.createElement("DIV"); TempWindow.style.opacity = 0; new Ajax.Request( './inc/'+filename+'.php', { method: 'post', parameters: Param, onComplete: function(response){ TempWindow.innerHTML += response.responseText; $('main_window').removeChild(TempWindow); } } ); $('main_window').appendChild(TempWindow); } function GetWindowId(Content) { for (var i = 0; i <= WindowIds.length; i++){ if(WindowIds[i]==Content) response = i; } return response; }
Beitrag zuletzt geändert: 28.8.2009 1:38:38 von nerdinator -
meinst du die hier?
http://dynamic-designs.lima-city.de/nerdinator.png
danke für die hilfe!
Beitrag zuletzt geändert: 28.8.2009 1:36:26 von dynamic-designs -
Nein, das weiter oben angeschriebene:
http://nerdinator.lima-city.de/dev/vesicha/
Dort wird Ajax usw. verwendet... -
nerdinator schrieb:
Ach menno, damit hab ich damals so viel rumgespielt :D So mit "Beweglichen" Fenstern und so... Fenster Dynamisch mit Ajax geladen und so ^^
Hier nochmal ein Beispiel:
http://nerdinator.lima-city.de/dev/vesicha/
Naja sieht echt gut aus.
Zumindestens im FF.
Aber leider zeig mir der Internet Explorer nur müll an. -
tshg schrieb:
Ich glaub das ist damals auch in der Phase entstanden, als ich den IE vollkommen boikottiert habe :D Zumindest mit meinen persönlichen Seiten ;)
Naja sieht echt gut aus.
Zumindestens im FF.
Aber leider zeig mir der Internet Explorer nur müll an. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage