Willkommen, Gast ( Anmelden | Registrierung )     [ Hilfe | Mitglieder | Suche ]

2 Seiten V   1 2 >  
Reply to this topicStart new topic
> Inline-Frame 1.0.1-sf, Angepasst an Sefrengo
luxli
Beitrag Tue. 15. August 2006, 10:21
Beitrag #1


Advanced Member
******

Gruppe: AdvancedMembers
Beiträge: 201
Mitglied seit: 01.07.2006
Wohnort: CH
Mitglieds-Nr.: 32



Mit dieser Anpassung an Sefrengo habe ich Neuland betreten. Wenn alles richtig ist kann dieses Modul zu den stabilen Modulen verschoben werden.

Zusätzlich zur Anpassung an Sefrengo sind kleine Änderungen enthalten damit die Seiten valide sind. Aber natürlich nur wenn auch die eingebundene Seite valide ist.

Überprüft bitte auch die von mir erstellten Textdateien auf Richtigkeit. Vielleicht wirft auch Bratzi als Autor der DeDi-Version einen Kontrollblick in das Modul.

Angehängte Datei  Inline_Frame_01_00_01.zip ( 3.77KB ) Anzahl der Downloads: 87
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Tue. 15. August 2006, 10:48
Beitrag #2


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



Klasse, du nun auch als Entwickler, toll!!!


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
luxli
Beitrag Tue. 15. August 2006, 12:02
Beitrag #3


Advanced Member
******

Gruppe: AdvancedMembers
Beiträge: 201
Mitglied seit: 01.07.2006
Wohnort: CH
Mitglieds-Nr.: 32



ZITAT(Olaf @ Tue. 15. August 2006, 11:48) *
Klasse, du nun auch als Entwickler, toll!!!


das ist etwas zuviel der Ehre für eine einfache Anpassung, aber was noch nicht ist kann ja vielleicht noch werden dry.gif
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Tue. 15. August 2006, 14:12
Beitrag #4


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



Hallo,
I-Frame ist sehr gut zu gebrauchen.
Ich bin schon länger nach einer optimalen möglichkeit zu suchen
die höhe des I-Frames dynamisch anzupassen.

Für den IE habe ich schon eine lösung, doch leider spielt der FF nicht ganz mit.
Wenn dann sollte es in beiden funktionieren.
Was auch noch nicht ganz zu 100% funktioniert ist der wechsel von einem
langen Content auf einen kurtzen Content (Frame wird nicht immer verkleinert)

Werde weitersuchen und sobald ich eine funktionierende lösung habe,
versuchen das ganze in das Modul einzubauen.

Vielleicht hat wer schon einen weiteren lösungsansatz???

Gruss Thomas
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Tue. 15. August 2006, 17:22
Beitrag #5


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



Lad doch mal irgendwo hin eine statische Demoseite, mal schauen vielleicht bekommen wir das gemeinsam hin.


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Wed. 16. August 2006, 12:17
Beitrag #6


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



hallo,
das ganze steht schon online.

www.planetmedia.at (ist aber noch DEDI da ich schon länger daran arbeite)

unter BUISSNES -> MORE gibt es einen einfachen Shop der per Iframe eingebunden ist.

und unter SPORT -> TRANSALP -> TRANSALP 2006
habe ich ein phpBB Forum eingebunden das noch fertig an das Layout angepasst werden muss.

Nun funktioniert das mit der dynamischen höhe auch im FF.
Leider funktioniert der wechsel zurück noch nicht richtig.
(i-frame mit viel inhalt --> i-frame mit wenig inhalt)

Das ganze ist mit js gelöst, da ich bisher keine möglichkeit gefunden habe wie das in php zu lösen wäre.
Sehr schön wäre es wenn es ohne js ginge.

Gruss Thomas
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Wed. 16. August 2006, 13:52
Beitrag #7


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



PHP kann nicht deinen Bildschirm ausmessen, das wird also nix.

"statische Demoseite" meint eine einfache HTML die das Problem verdeutlicht, am besten darauf beschrieben worum es geht.


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Wed. 16. August 2006, 14:04
Beitrag #8


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



auf der Seite mit dem Forum ist das ganze deutlich zu sehen.......

Der i-frame wird beim öffnen der Category auf die benötigte höhe vergrössert.

Wenn wieder zurückgewechselt wird auf die Forum Startseite bleibt der i-frame
auf der zuletztverwendeten höhe.

Zu erkennen an der Scrollbar auf der Seite.
Die unterste Zeile (Footer) wird nicht nach oben gerückt.

Dies ist soweit das einzige problem.
Bin noch nicht ganz daraufgekommen an was das liegt.
Ich vermute aber dass die Seite nicht richtig aktualisiert wird, oder der wert der höhe
falsch übernommen wird.

Gruss Thomas
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Wed. 16. August 2006, 14:18
Beitrag #9


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



Jo, Problem verstanden, es werden auch bei jedem Klick 20px mehr tongue.gif

Versuch mal das onload="iFrameHeight()" in das Forum reinzutun, nicht in das DEDI. Aber wirklich, ganz im trüben gefischt!

Oder du müsstest im JS einen globalen relaod erzwingen, aber wie das geht....


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Wed. 16. August 2006, 14:37
Beitrag #10


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



das onload="iFrameHeight()" hatte ich schon versuchsweise im Forum eingefügt.

hat leider nichts gebracht.
Ausserdem wäre dies nicht sinvoll da das ganze dann nicht direkt mit einem Modul realisiert werden kann.
Es müsste immer der eingebundene Bereich editiert werden.

An einen globalen reload habe ich auch schon gedacht.
Werde mal schauen ob dies mit JS möglich ist (wenn ich mich nicht täusche habe ich früher mal was gelesen das in diese richtung geht - vor Jahren wurde noch viel mit Frames gearbeitet wink.gif mad.gif smile.gif biggrin.gif )

Wo die 20px herkommen kann ich auch noch nicht sagen........

Thomas
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Wed. 16. August 2006, 15:19
Beitrag #11


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



ZITAT(speedweb @ Wed. 16. August 2006, 15:37) *
Wo die 20px herkommen kann ich auch noch nicht sagen........

Das kommt aus dem Script, du gibst immer 20 dazu, guck mal rein wink.gif

Das komische ist ja, dass also scheinbar eine Berechnung durchgeführt wird, aber nicht die Höhe neu angesetzt wird. Bzw. immer nur wenn die sich vergrößert, denn dann klappts ja. Verkleinert sich die Höhe des Contents werden nur die 20 zur bisherigen Höhe dazugerechnet.

Soviel zur Fehlerbeschreibung smile.gif


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Wed. 16. August 2006, 15:30
Beitrag #12


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



Ich habs, deine Funktion ist ungeeignet:
QUELLTEXT
                h = document.frames('blockrandom').document.body.scrollHeight;
                document.all.blockrandom.style.height = h + 20 + 'px';

Das nimmt ja immer die Höhe von Body + 20, also alles so wie du willst, bzw. eigentlich nicht willst wink.gif


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Wed. 16. August 2006, 16:45
Beitrag #13


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



vielen Dank.....
das muss ich mir mochmals genauer ansehen.

Ich hatte zuvor eine andere lösung di aber im FF nicht funktionierte.

Nach langen Googeln habe ich dann dies hier gefunden.
Dies funktioniert in beiden, jetzt muss ich schauen wie ich das anpassen kann.
(bin nicht gerade besonders bewandert in JS)

Aber was nicht ist kann noch werden....... wink.gif

Thomas
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Wed. 16. August 2006, 22:38
Beitrag #14


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



Hallo,
nun habe ich was hinbekommen was im IE unt FF funktioniert.
(zumindest mit *.htm Dateien - dynamiche Seiten habe ich noch nicht getestet zum einbinden)

QUELLTEXT
<script type="text/javascript">
<!--
function resize_me()
{
if(document.getElementById)
    {
    try
        {
        intDiff = (document.all||window.opera)?3:0;intDiff += (window.opera)?4:0;
        objBody = document.getElementsByTagName('body')[0];
        objBody.style.margin = 0;objBody.style.overflow = 'hidden';
        objBody.innerHTML = '<div>' + objBody.innerHTML + '</div>';
        parent.document.getElementsByName(self.name)[0].style.height
                          = objBody.firstChild.offsetHeight + intDiff;
        }
    catch(e)
        {
        return true;
        }
    }
}
window.onload=resize_me;
//-->
</script>


Dieser Teil muss bei jeder Datei die im I-Frame aufgerufen wird in den Header.
(ist nicht die elegante lösung aber funktioniert........ sad.gif sad.gif sad.gif sad.gif )

Im Eltern Dokument muss der Iframe nur einen eindeutigen name haben.
Das heisst es ändert sich am modul nichts.

Ich habe bis jetzt noch keine möglichkeit gefunden das ganze im Hauptdokument
zu lösen, was sicher optimal wäre.
Was dabei noch zu beachten ist, ist dass der gesamte inhalt der im I-Frame aufgerufen
wird in einem Div ausgegeben wird. (zu beachten wenn mit div gearbeitet wird)

Werde aber sicher noch nach weiteren lösungen suchen, den diese gefällt mir nicht ganz.

Gruss Thomas

PS:
konnte das ganze heute noch mit dynamischem inhalt testen, und kann sagen dass es soweit funktioniert.
es gibt 2 aktuelle Beispiele unter www.planetmedia.at
1. Sport -> Transalp -> Transalp 2006 -> Forum
(hier habe ich das phpBB2 Forum eingebunden, da wird der Frame noch nicht verkleinert - selbe Script)
2. Buissnes -> more-df -> Shop
(hier funktioniert es genau so wie ich mir das vorstelle)
Leider funktioniert das ganze nur ausgehend vom selben ACCOUNT (die eingebundenen Dateine müssen ja bearbeitet werden)
Ich habe auch das einbinden von einem externen ACCOUNT getestet (mit bearbeiteten Dateien) aber leider ohne erfolg.

Vielleicht hat ja wer noch eine Idee......................

Thomas

Der Beitrag wurde von speedweb bearbeitet: Thu. 17. August 2006, 00:55
Go to the top of the page
 
+Quote Post
Daniel
Beitrag Thu. 17. August 2006, 21:49
Beitrag #15


Advanced Member
***

Gruppe: Members
Beiträge: 54
Mitglied seit: 26.06.2006
Wohnort: Karlsruhe
Mitglieds-Nr.: 3



Hier möchte ich nur mal kurz etwas einwerfen, dass vielleicht den ein oder anderen helfen wird, wenn er dieses iframe-autosizing verwenden möchte.

Ich habe noch keine Lösung gefunden, wie man iframes, die auf andere Domains verweisen, auto-sizen kann.

Beispiel:
Auf http://www.meine-domain.de/
HTML
...
<iframe src="http://www.andere-domain.de/"></iframe>
...

diesen iframe kann man nicht auto-resizen.

Das liegt daran, dass JavaScript von andere-domain.de aus Sicherheitsaspekten nicht auf Objekte von meine-domain.de zugreifen darf (umgekehrt natürlich auch nicht) und es Exceptions hagelt.


--------------------
Technikwürze - Design & Webstandards Podcast
Go to the top of the page
 
+Quote Post
luxli
Beitrag Fri. 18. August 2006, 00:24
Beitrag #16


Advanced Member
******

Gruppe: AdvancedMembers
Beiträge: 201
Mitglied seit: 01.07.2006
Wohnort: CH
Mitglieds-Nr.: 32



ZITAT(Daniel @ Thu. 17. August 2006, 22:49) *
Ich habe noch keine Lösung gefunden, wie man iframes, die auf andere Domains verweisen, auto-sizen kann.

Obwohl ich von Programmierung wenig bis nichts verstehe, das Beispiel von spedweb einerseits und der Opera-Browser mit "An Breite anpassen" andererseits lassen mich zumindest annehmen, dass es eine Lösung geben muss. Mit dem Beispiel von Spedweb funktioniert sogar das an "An Breite anpassen" im Opera in der Höhe und Breite. smile.gif

OT: Bei der Kontrolle meiner Testseite mit im Iframe eingebundener externer dynamischer Seite habe ich übrigens festgestellt dass FF, Opera und IE die Breite und Höhe in px nicht genau gleich interpretieren.
Go to the top of the page
 
+Quote Post
Olaf
Beitrag Fri. 18. August 2006, 06:28
Beitrag #17


Advanced Member
********

Gruppe: AdvancedMembers
Beiträge: 613
Mitglied seit: 30.06.2006
Mitglieds-Nr.: 30



Daniel wollte sagen das es solange klappt, solange Seite wie Iframe auf der gleichen Domain liegen. Unterscheiden sie sich ist Pumpe.
Vielleicht baut doch mal jemand ne Testseite!? Richtig mit unterschiedlichen Farben, das man es auch nachvollziehen kann. Einmal gleiche Domain, einmal unterschiedlich.

Ob dynamisch oder statisch spielt keine Rolle, warum macht ihr da Unterschiede!? Beim Browser kommt immer statisch an.


--------------------
Gruß Olaf aus Ohorn

Lieber spät und richtig als nie und falsch.
Go to the top of the page
 
+Quote Post
speedweb
Beitrag Fri. 18. August 2006, 15:57
Beitrag #18


Advanced Member
***

Gruppe: Members
Beiträge: 81
Mitglied seit: 03.07.2006
Wohnort: Dornbirn / Vlbg. - Austria
Mitglieds-Nr.: 83



Hallo,
ich habe auch eine lösungsansatz getestet mit dem es möglich wäre externe domains einzubinden.
doch leider habe ich dies im ff und opera nich zum laufen gebracht.

Es soll aber nicht das ziel sein externe Domains einzubinden,
sonder eine möglichkeit geben externe anwendungen von der gleichen domain
in eine Webseite zu integrieren.
Dazu bietet sich i-frame am besten an, nur mit dem Problem dass die höhe nicht flexiebel ist.
externe anwendungen haben nicht immer die selbe menge an content,
und es schaut nicht gerade gut aus wenn der i-frame mit der maximalen höhe definiert ist oder
es sich zwei scrollbars auf der seite befinden wink.gif wink.gif

gruss Thomas

PS. sobald ich dazukomme kann ich ein DEMO bei mir am Server einrichten

Der Beitrag wurde von speedweb bearbeitet: Fri. 18. August 2006, 15:57
Go to the top of the page
 
+Quote Post
Daniel
Beitrag Sat. 19. August 2006, 01:50
Beitrag #19


Advanced Member
***

Gruppe: Members
Beiträge: 54
Mitglied seit: 26.06.2006
Wohnort: Karlsruhe
Mitglieds-Nr.: 3



ZITAT(speedweb @ Fri. 18. August 2006, 16:57) *
ich habe auch eine lösungsansatz getestet mit dem es möglich wäre externe domains einzubinden.
doch leider habe ich dies im ff und opera nich zum laufen gebracht.

Wie sah der denn aus?

ZITAT(speedweb @ Fri. 18. August 2006, 16:57) *
Es soll aber nicht das ziel sein externe Domains einzubinden,
sonder eine möglichkeit geben externe anwendungen von der gleichen domain
in eine Webseite zu integrieren.

Ja, klar. Der Einwurf war auch eher an andere adressiert, die deine Lösung bei sich einbauen und feststellen, dass es für sie nicht funktioniert.

ZITAT(speedweb @ Fri. 18. August 2006, 16:57) *
Dazu bietet sich i-frame am besten an, nur mit dem Problem dass die höhe nicht flexiebel ist.


Ein Nachteil von I-Frames, den man auch nicht umgehen kann, ist, dass man nicht direkt auf Unterseiten in dem I-Frame linken kann. (Der normalsterbliche Surfer kann es nicht) In der Browser-Adresszeile steht immer die URL der Sefrengo-Seite, auf der der I-Frame eingebunden wurde, egal wieviele Links der User schon in dem I-Frame weitergesurft ist.

Ein anderer Nachteil, der aber per JavaScript umgangen werden kann, hängt mit dem Scrollen zusammen. Angenommen, man hat eine laaange Seite in den (auto-gesizten) I-Frame geladen und der User hat die Seite runtergescrollt. Nun klickt er auf einen Link in dem I-Frame. Der I-Frame lädt neu, aber die Seite bleibt so weit runtergescrollt. Sehr verwirrend für den User, denn er muß nun die Seite per Hand wieder an den Anfang scrollen.
Wie gesagt, dass kann man mit JavaScript umgehen (auch hier gilt: nur auf der gleichen Domain)
QUELLTEXT
parent.scrollTo(0,0);
z.B. in die resize_me Funktion von speedweb* einfügen:
CODE
<script type="text/javascript">
<!--
function resize_me()
{
if(document.getElementById)
{
try
{
intDiff = (document.all||window.opera)?3:0;intDiff += (window.opera)?4:0;
objBody = document.getElementsByTagName('body')[0];
objBody.style.margin = 0;objBody.style.overflow = 'hidden';
objBody.innerHTML = '<div>' + objBody.innerHTML + '</div>';
parent.document.getElementsByName(self.name)[0].style.height
= objBody.firstChild.offsetHeight + intDiff;
parent.scrollTo(0,0);
}
catch(e)
{
return true;
}
}
}
window.onload=resize_me;
//-->
</script>


--------------------
Technikwürze - Design & Webstandards Podcast
Go to the top of the page
 
+Quote Post
ole
Beitrag Sun. 26. November 2006, 02:09
Beitrag #20


Newbie
*

Gruppe: Members
Beiträge: 1
Mitglied seit: 26.11.2006
Mitglieds-Nr.: 405



HI ich misch mich mal gerade kurz ein ...
Ich bin ein absoluter Code Noob... also versteh ich das Skript leider kaum bis garnicht. aber es funktioniert auf meiner Seite super... leider habe ich probleme in ff dort funktioniert es garnicht die größe wird einfach nicht angepasst... das geht nur in Opera kann mir jemand sagen ob das bekannt ist odre ob man das skript noch umschreiben muss kann:::? währe über eure Hilfe sehr dankbar auch wenn das hier schon ein bischen äler ist...

mfg ole
Go to the top of the page
 
+Quote Post

2 Seiten V   1 2 >
Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 29.3.24 - 09:41

Sefrengo ist ein eingetragenes Markenzeichen und urheberrechtlich geschützt.
Copyright 2009 Design & Daten, Alle Rechte vorbehalten.