Jump to content



Frames σε ιστοσελιδα


georgeks78

Recommended Posts

Δημοσιεύτηκε

Η λογικη οπως βλεπετε και στο παρακατω σχημα ειναι μια σελιδα χωρισμενη σε 4 frames, το πανω θα εχει καποιο banner και στο αριστερα θα εμφανιζεται μια λιστα με λινκς. Οταν γινει κλικ καπου σε αυτη τη λιστα (στο παραδειγμα 123) θα ανοιγει η linked σελιδα στο κεντρικο frame. Μεχρι εκει παω καλα και δουλευει ρολοι. Το θεμα ειναι στο κεντρικο frame θα εμφανιζεται υπολιστα της πρωτης παλι με λινκς και οταν γινετε κλικ εκει θα πρεπει να ανοιγει το μενου στο αριστερο frame. Αυτο δε μπορω να το πετυχω με τιποτα. Πως θα δηλωσω target frame στο λινκ, το τερμα αριστερα frame οταν η σελιδα που εμφανιζεται στο κεντρικο frame δεν ειναι μερος του frameset?

Καταλαβατε η σας μπερδεψα?

Υπαρχει αλλος τροπος. (Οσο το δυνατον απλουστερος)

post-722-1416071639,3284_thumb.jpg

Έστω ότι τα frames λέγονται frame1 (το header), frame2, frame3 και frame4 από αριστερά προς τα δεξιά. Αν θέλεις το 123 link να ανοίγει στο frame3 το link σου θα πρέπει να είναι κάπως έτσι:


<a target="frame3" href="http://www.thelab.gr/">123</a>

Μαλλον σας μπερδεψα...

Ας ξεχασουμε το πανω frame και ας υποθεσουμε οτι υπαρχουν μονο 3. τα frame1 , frame2, και frame3

ενα κλικ στο frame 1 θα ανοιγει μια σελιδα με λινκς στο frame2 και εν συνεχεια κλικ σε καποιο λινκ στο frame2 Θα ανοιγει μια τελικη σελιδα στο frame 3 Κατι σαν διαδοχικα βηματα δηλαδη

Στα properties του 1ου λινκ (στο frame1) μπορω να δηλωσω target to frame2. εκει λοιπον εμφανιζεται η 2η σελιδα με λινκς που θα πρεπει αν τα πατησουμε να εμφανιζονται στο frame 3 το θεμα ειναι οτι η σελιδα που θα εμφανιστει στο frame2 ειναι μια ξεχωριστη σελιδα εκτος frameset, Δεν μπορω λοιπον στα λινκ της να δηλωσω target to frame3.

Μηπως γινετε με πινακα καταργωντας εντελως τα frames? Δηλαδη αντι για frames να εχω 3 κελια ενος πινακα

post-722-1416071639,345_thumb.jpg

Δε καταλαβαίνω τι εννοείς. Μπορείς τα links που βάζεις στο frame 1 να εμφανίζονται στο frame2 αλλά αυτά που βάζεις στο frame2 δεν εμφανίζονται στο frame3;

Με πίνακα δε θα παίξει. Δε μπορείς να ορίσεις target cell πίνακα. Τουλάχιστον εγώ δε το ξέρω.

Ακριβως γιατι τα λινκς δεν δημιουργουνται στο frame2. Σto frame 2 μετα το κλικ στο frame1 απλα εμφανιζεται (φορτωνεται) μια σελιδα που περιεχει ενα πινακα με λινκς (αλλα αυτη η σελιδα ειναι ασχετη με το frameset, εχει δημιουργηθει εκτος frameset)

Η λογικη ειναι οτι το μονο που θα πρεπει να φαινεται με το που φορτωνει η σελιδα ειναι τα περιεχομενα του frame1 , διοτι θα εχει μια λιστα με 10 αντικειμενα, ας πουμε για παραδειγμα αυτοκινητα . Οπου θα αναγραφονται 10 μαρκες, αν κανω κλικ στην πρωτη μαρκα στο 2ο frame θα εμφανιζεται μια σελιδα με ανταλλακτικα για αυτη τη μαρκα αλλα επειδη θα ειναι πολυ γενικη θα εχει υποκατηγοριες οι οποιες θα εμφανιζονται στο frame 3.

αν πατηθει αλλη μαρκα αυτοκινητου στο frame 1 προφανως θα φορτωθει αλλη σελιδα με ανταλλακτικα στο frame 2 kai antistoixa sto 3.

Ελπιζω να εγινα πιο κατανοητος τωρα.

Αυτο που σκεφτηκα μολις τωρα ειναι να μη χωριστει η αρχικη σελιδα σε 3 αλλα σε 2 frames και στο frame2 να εμφανιζεται ενα νεο frameset

ΔΗΛΑΔΗ :

Αρχικη σελιδα με 2 frames, ενα κλικ στο πρωτο εμφανιζει στο δευτερο μια νεα σελιδα ε 2 frames.

Λογικα ετσι θα δουλψουν και τα targets.

Ασχετο,

γιατι σε σελιδες του frontpage ο firefox δειχνει οτι ναναι,

ενω με το dreamweaver κανει κολπα o ΙΕ (οχι σe βαθμο που κανει ο firefox με το frontpage, ειδικα σε forms)

Ενδιαφέρον το ερώτημα που έθεσες georgeks78. Ευκαιρία να γίνουμε όλοι λίγο σοφότεροι. Δοκίμασα με τρία frames σε ένα frameset και δεν αντιμετώπισα κανένα πρόβλημα. Τα links δουλεύουν κανονικά:

(Αρχείο Main.htm)

<html><head><title>Main</title></head>

<frameset cols="25%, 25%, *">

<frame name="left" src="1.htm">

<frame name="middle">

<frame name="right">

</frameset>

</html>

(Αρχείο 1.htm)

<html><body>

<h2>Page 1</h2>

<a href="2.htm" target="middle">2</a>

</body></html>

(Αρχείο 2.htm)

<html><body>

<h2>Page 2</h2>

<a href="3.htm" target="right">3</a>

</body></html>

(Αρχείο 3.htm)

<html><body>

<h2>Page 3</h2>

</body></html>

Υπάρχει όμως ένα πρόβλημα. Θα θέλαμε όταν γίνεται κλικ στα Link του frame 1 αλλάζοντας τα περιεχόμενα του 2, να μην παραμένει μία άσχετη σελίδα στο 3 αλλά να μένει κενή. Δηλαδή θέλουμε με ένα κλικ να αλλάξουν δύο frames. Αυτό μπορεί να γίνει μόνο με δύο τρόπους. Ένας είναι αυτός που πρότεινες, δηλαδή με τα δύο frameset. Αυτό δουλεύει αλλά προκαλεί ένα δυσάρεστο οπτικό αποτέλεσμα κατά το φόρτωμα του εσωτερικού frameset. ’λλος τρόπος είναι με χρήση JavaScript. Π.χ. μπορεί να προστεθεί ένας χειριστής συμβάντος onClick στο link της σελίδας 1:

<a href="2.htm" target="middle" onClick="parent.right.location.href='about:blank'">Page 2</a>

Αυτό δουλεύει αλλά βέβαια μόνο εάν είναι ενεργοποιημένη η JavaScript. Αν δεν είναι θα αλλάξει μόνο η σελίδα 2, αλλά δεν είναι και τόσο τραγικό.

> Ασχετο, γιατι σε σελιδες του frontpage ο firefox δειχνει οτι ναναι...

Διότι ο Firefox είναι W3C-standards-compliant browser ενώ ο IE είναι MS-standards-compliant. Θέλω να πω ότι η Microsoft λόγω του μεγέθους της ως εταιρία θεωρεί ότι έχει την πολυτέλεια να μην ακολουθεί κατά γράμμα τα κοινώς αποδεκτά standards αλλά να φτιάχνει τα δικά της.

BTW: Το screenshot θα ήταν πολύ πιο ευκρινές εάν το έσωζες σε format png ή gif, και επιπλέον θα είχε και μικρότερο μέγεθος. Εικόνες με μεγάλες μονόχρωμες περιοχές συμπιέζονται πολύ καλά με το png format.

Το παρακάτω screenshot δεν αντιστοιχεί ακριβώς στα παραπάνω αρχεία αλλά είναι λίγο εμπλουτισμένο.

post-2469-1416071645,6374_thumb.png

ΤΗΧ θα δοκιμασω σημερα που εχω χρονο και θα σου πω.

Επειδη προφανως το κανω ερασιτεχνικα Και δεν εχω ασχοληθει ιδιαιτερα, θα ηθελα να ρωτησω κατι αλλο. Τα fp extensions ειναι frontpage extensions? Εχω ενα μηνυμα απο την εταιρεια που κανει web hosting οτι αν χρησιμοποιησω ftp για να ανεβασω σελιδες HTML μπορει να απενεργοποιηθουν τα fp extensions, τα χρειαζομαι απο τη στιγμη που τελικα δε θα χρησιμοποιησω frontpage λογω του μπαχαλου που γινεται με τον firefox?

Τελικα δουλεψε μια χαρα, το προβλημα ηταν στο οτι το dreamweaver για καποιο λογο ΔΕΝ εβαζε ονομα στο αριστερο frame με αποτελεσμα να γινεται ενα μπαχαλο. Τελικα η λυση δωθηκε με επεμβαση απ ευθειας στο κωδικα της σελιδας. Την ιδεα την πηρα απο την πρωτη σου απαντηση και κανοντας εναν εκτεταμενο ελεγχο ειδα οτι ελειπε ενα frame name, γι αυτο και δεν μπορουσε να δηλωθει ως target. Τωρα οσον αφορα την αισθητικη πραγματι στο 3ο φραμε παραμενουν τα περιεχομενα αλλα η χρηση javascript μαλλον αποκλειεται προς το παρον αφου θα χρειαστει να το ψαξω αρκετα.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Δημιουργία...

Important Information

Ο ιστότοπος theLab.gr χρησιμοποιεί cookies για να διασφαλίσει την καλύτερη εμπειρία σας κατά την περιήγηση. Μπορείτε να προσαρμόσετε τις ρυθμίσεις των cookies σας , διαφορετικά θα υποθέσουμε ότι είστε εντάξει για να συνεχίσετε.