Προς το περιεχόμενο

internet explorer unvisited links blink script


heavyaris

Προτεινόμενες αναρτήσεις

Δημοσ.

καλησπέρα παιδιά.

θα ήθελα να ρωτήσω εάν υπάρχει κάποιο script το οποίο να "λύνει" το πρόβλημα του κειμένου που αναβοσβήνει στον internet explorer. αυτά που βρήκα το κάνουν, αλλά εάν είναι να επικολλάω μια παράγραφο js κώδικα σε κάθε λίνκ της σελίδας πιστέυω δεν είναι ότι καλύτερο.

γιαυτό ψάχνω για ένα script το οποίο θα κάνει όλα τα unvisited links να αναβοσβήνουν.

να λειτουργεί δηλαδή όπως το παρακάτω css στον firefox:

>a:link {color: #bddb1e; text-decoration:blink; }

υπάρχει περίπτωση να βρώ;

ευχαριστώ.

Δημοσ.

Αυτό το «εάν είναι να επικολλάω μια παράγραφο js κώδικα σε κάθε λίνκ της σελίδας» κάπως με μπέρδεψε. Δε γράφεις το script σου (αυτό που βρήκες τέλος πάντων) μία φορά στο <head> της HTML; Αν όχι, πώς το κάνεις ακριβώς... ;

Δημοσ.

μέχρι στιγμής το κάνω με το css που έδειξα, αλλά δεν λειτουργεί στον explorer.

μερικά παραδείγματα που είδα στο διαδίκτυο, είναι για κείμενο, και απαιτούν να "τυλίξεις" το επιθυμητό κείμενο με κώδικα js, ενώ εγώ χρειάζομαι κάτι γενικό που θα κάνει όλα τα unvisited link να αναβοσβήνουν. (δηλαδή ακόμα και να καθόμουν να το έκανα, πως ξέρω ποιο θα είναι για τον καθένα το unvisited link?)

ευχαριστώ.

Δημοσ.

Το να κάνεις όλα τα links να αναβοσβήνουν σε όλους τους browsers μέσω Javascript είναι μάλλον τετριμμένο ως script.

 

Παρ' όλα αυτά, έχεις δίκιο σε ένα σημείο: Για το αν ένα link είναι unvisited ή visited μία δεδομένη στιγμή δεν υπάρχει σχετικό DOM property των <a> elements και επομένως δε μπορείς να το τσεκάρεις μέσω Javascript. Αλλά υπάρχουν workarounds και γι' αυτό. Δες π.χ. τον παρακάτω κώδικα:

 

>
<html>
   <head>
       <title>Crossbrowser blinking links with Javascript</title>
       <script type="text/javascript">
           function markAsVisited(link) {
               link.className = "Visited";
           }

           function blinkUnvisited() {
               var links = document.getElementsByTagName("a");
           
               for(var i = 0; i < links.length; i++) {
                   if(links[i].className != "Visited") {
                       links[i].style.visibility = (links[i].style.visibility == "hidden" ? "visible" : "hidden");
                   }
               }
           }

           document.onload = setInterval("blinkUnvisited()", 1000);
       </script>
   </head>
   <body>
       <a href="#link1" onclick="markAsVisited(this)">link1</a> <a href="#link2" onclick="markAsVisited(this)">link2</a> <a href="#link3" onclick="markAsVisited(this)">link3</a>
   </body>
</html>

 

Πρέπει να γίνεται και με πιο συμπτυγμένο κώδικα, π.χ. αντί να ορίζεις onclick event handler μέσα στο body για κάθε ένα <a> element ξεχωριστά, να κάνεις στη Javascript ένα iteration πάνω στα <a> elements και να ορίζεις εκεί τον handler.

Δημοσ.

Το να κάνεις όλα τα links να αναβοσβήνουν σε όλους τους browsers μέσω Javascript είναι μάλλον τετριμμένο ως script.

 

 

 

αυτό δεν γίνεται και με css

 

>
a:link {
text-decoration:blink;
}

 

?

Δημοσ.

Βασικά μπορείς να κάνεις χρήση της ψευδοκλάσης visited για να αποφύγεις την JavaScript...

 

>
a {
 text-decoration: blink
}

a:visited {
 text-decoration: none
}

 

Υποστηρίζεται από όλους τους διαδεδομένους browsers, αλλά δεν είμαι σίγουρος για ποιες εκδόσεις... ;)

Δημοσ.

Διάβασε λίγο προσεκτικά το post #1, μην επαναλαμβανόμαστε.

 

το διαβασα αγαπτητέ mod και για αυτό εκανα και την απάντηση. ;)

 

 

Βασικά μπορείς να κάνεις χρήση της ψευδοκλάσης visited για να αποφύγεις την JavaScript...

 

>
a {
 text-decoration: blink
}

a:visited {
 text-decoration: none
}

 

Υποστηρίζεται από όλους τους διαδεδομένους browsers, αλλά δεν είμαι σίγουρος για ποιες εκδόσεις... ;)

 

ετσι πιστευώ και εγώ :P

Δημοσ.

To text-decoration: blink δεν υποστηρίζεται απο τον ΙΕ και πρέπει να χρησιμοποιήσεις javascript. Υπάρχουν και λύσεις με cookies και php που να αποθηκεύεται σε τι έκανε click αλλα εξαρτάται απο το δικό σου project τι μπορει να εφαρμοστεί.

Δημοσ.

To text-decoration: blink δεν υποστηρίζεται απο τον ΙΕ και πρέπει να χρησιμοποιήσεις javascript. Υπάρχουν και λύσεις με cookies και php που να αποθηκεύεται σε τι έκανε click αλλα εξαρτάται απο το δικό σου project τι μπορει να εφαρμοστεί.

 

Αα, βασιζόμενος εδώ, νόμιζα ότι δουλεύει παντού... Αμάν με αυτόν τον IE... :angry: :angry: :angry:

 

EDIT: και μόλις το ξαναδιάβασα προσεκτικά το λινκ που παρέθεσα και, εν ολίγοις, δουλεύει μόνο σε Firefox και Opera... :o Συγνώμα για το σπαμάρισμα... :unsure:

Δημοσ.

Αα, βασιζόμενος εδώ, νόμιζα ότι δουλεύει παντού... Αμάν με αυτόν τον IE... :angry: :angry: :angry:

Στην ίδια σελίδα γράφει το παρακάτω

 

Note: No versions of Internet Explorer (including IE8) support the property value "inherit".

 

Note: The "blink" value is not supported in IE, Chrome, or Safari.

 

Η αλήθεια είναι οτι σε τέτοιες λεπτομέρειες πλέον δεν κολλάω (εκτός πολύ συγκεκριμένων εξαιρέσεων). Αν δεν παίζει στον ΙΕ ... ποτέ του.

Δημοσ.

Η αλήθεια είναι οτι σε τέτοιες λεπτομέρειες πλέον δεν κολλάω (εκτός πολύ συγκεκριμένων εξαιρέσεων). Αν δεν παίζει στον ΙΕ ... ποτέ του.

Το μερίδιο συνολικά των χρηστών Internet Explorer δυστυχώς παραείναι μεγάλο για να παραβλέπεται. Το ευτύχημα είναι ότι επιτέλους έχει κατακρημνιστεί το ποσοστό του IE 6. Αυτός ήταν πραγματικά ανάπηρος.

Δημοσ.

Το μερίδιο συνολικά των χρηστών Internet Explorer δυστυχώς παραείναι μεγάλο για να παραβλέπεται. Το ευτύχημα είναι ότι επιτέλους έχει κατακρημνιστεί το ποσοστό του IE 6. Αυτός ήταν πραγματικά ανάπηρος.

 

Και εγώ έχω αρχίσει και αγνοώ τον explorer τελευταία... Δεν λέω ότι έτσι είναι το σωστό, αλλά με τη λογική που οι developers αγνοούν τα διεθνή πρότυπα, έτσι και εγώ τον αγνοώ. Και αυτό μετά από άπειρες ώρες debugging και ugly hacks για τον εν λόγω browser. Ε, δεν πάει άλλο. Έχουμε φτάσει 2010 και ξεκινώντας ένα project ξέρω ότι το 30% της δουλειάς μου θα αφορά σε έναν browser του... 2001(!!!).

 

Ξέρω ότι χάνω viewers, ξέρω ότι χάνω και πελάτες όταν τους λέω ότι για να είναι συμβατή η σελίδα του με IE6 που έχει ένα υπολογίσιμο μερίδιο της αγοράς θέλω έξτρα χρήματα, αλλά δεν γίνεται αλλιώς. Άλλωστε, αν οι ίδιοι οι web developers δεν τον "αποκλείσουν", ο χρήστης δεν θα δεί ποτέ την ανάγκη αναβάθμισης σε άλλον καλύτερο browser. ;)

 

EDIT: Και εδώ ένα ενδιαφέρον άρθρο γιατί να σταματήσουμε να γράφουμε browser-specific κώδικα για τον IE6...

Δημοσ.

Εγώ παντος τον εχω γραμμένο τον IE...φτάνει που σερφάρει με αυτον σχεδον ολος ο κοσμακης(μιας δεν δεν ξερουν τι ειναι το firefox).Browser του 2000 και εξακολουθει και υπαρχει?????Μετά σου λενε βγηκε IE 8 ε και?

Οποτε εγω τον αφήνω και ασχολούμαι με τους αλλους browser..

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

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