Αλλαγή εικόνας background?

Ερωτήσεις και απαντήσεις σχετικές με την HTML, XHTML και την κατασκευή σελίδων για το Web.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Michelle
Δημοσιεύσεις: 631
Εγγραφή: 13 Αύγ 2005 17:12

Αλλαγή εικόνας background?

Δημοσίευση από Michelle » 29 Σεπ 2005 02:32

Πως γίνεται πατώντας σε ενα σύνδεσμό να αλλάζει η εικόνα στο φόντο ενός κελιού ενος πίνακα?

Ευχαριστώ εκ των προτέρων!

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

Αλλαγή εικόνας background?

Δημοσίευση από skeftomilos » 29 Σεπ 2005 04:21

Κώδικας: Επιλογή όλων

onclick="document.getElementById('cell').style.backgroundImage='url(eikona.png)'"
- Live Demo

Πάντως η αλλαγή του background δεν είναι πολύ αξιόπιστη τεχνική. Προτιμότερη η αλλαγή του src ενός image.
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Michelle
Δημοσιεύσεις: 631
Εγγραφή: 13 Αύγ 2005 17:12

Αλλαγή εικόνας background?

Δημοσίευση από Michelle » 29 Σεπ 2005 16:21

Ευχαριστώ πολύ!!!

Γιατί δεν είναι αξιόπιστο?

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

Αλλαγή εικόνας background?

Δημοσίευση από skeftomilos » 30 Σεπ 2005 03:29

Χμ, να σου πω την αλήθεια δεν έχω κατανοήσει ακριβώς τι γίνεται με τα background images, οπότε μπορεί οι επιφυλάξεις μου να μην είναι και πολύ βάσιμες. Αυτό που είναι βέβαιο είναι ότι κανένας browser δεν τα σώζει στο δίσκο όταν κάνουμε Save As, σε αντίθεση με τα <img> elements που σώζονται κανονικά. Μετά αγνοώ τι γίνεται με το caching και preloading των backgrounds. Στην ουσία δεν πρόκειται για HTML αλλά για CSS, για τα οποία οι browsers σήμερα έχουν μέτρια υποστήριξη. Παράδειγμα:

Κώδικας: Επιλογή όλων

img.src = 'eikona.png'
div.style.backgroundImage = 'url&#40;eikona.png&#41;'
Ας υποθέσουμε ότι οι μεταβλητές img και div αναφέρονται σε κάποια στοιχεία της σελίδας. Η αλλαγή της εικόνας του img είναι πολύ άμεση, ενώ για το div περνάμε μέσα από το style. Μετά πρέπει να βάλουμε το όνομα της εικόνας μέσα σε 'url(...)' το οποίο με προβληματίζει αρκετά. Ο browser θα ξανακατεβάσει το αρχείο από το server ή θα αξιοποιήσει ένα cached αντίγραφο; Η τεχνική preloading var m = new Image(); m.src = 'eikona.png' δουλεύει με τα background images; Επειδή επικρατεί μία θολούρα για όλα αυτά μέσα στο κεφάλι μου, προσπαθώ να αποφεύγω αυτές τις καταστάσεις όσο είναι δυνατό. :)
The pure and simple truth is rarely pure and never simple. Ο μη νους δε σκέπτεται μη σκέψεις για το τίποτα.

Απάντηση

Επιστροφή στο “HTML και XHTML”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες