Maison > interface Web > js tutoriel > Idées pour implémenter l'effet d'invite clignotante d'une page Web title_javascript skills

Idées pour implémenter l'effet d'invite clignotante d'une page Web title_javascript skills

WBOY
Libérer: 2016-05-16 16:54:54
original
1611 Les gens l'ont consulté

Il est très courant d'utiliser le titre d'une page Web pour rappeler aux utilisateurs les nouveaux messages. Par exemple, sur Weibo et certaines boîtes mail, cette fonction est très courante. Comment implémenter cette fonction ?

L'idée est la suivante : accédez à l'arrière-plan via ajax. S'il y a de nouvelles nouvelles, remplacez le titre de la page Web par des informations rapides et alternez avec des espaces. Exemple : Basculez entre [Vous avez de nouvelles nouvelles] et [  ]. Le contenu de l'invite étant dynamique, le nombre d'espaces pour le texte de remplacement est également calculé. Utilisez ici des espaces sur toute la largeur. Mais s’il y a des caractères à demi-largeur tels que des « chiffres » dans le message d’invite, des problèmes surviendront. Un espace pleine largeur est beaucoup plus large qu’un espace demi-largeur 1. Dans ce cas, il sera inconfortable à regarder lors du flashage ; la solution est de remplacer les caractères pleine chasse par des espaces pleine chasse, et de remplacer les caractères demi-chasse par des espaces demi-chasse.
Mais document.title=' '; peu importe le nombre d'espaces en demi-largeur, le navigateur n'en affiche qu'un seul. S'il est utilisé, il est affiché tel quel ; seul var t=document.getElementsByTagName('title')[0] peut être utilisé. Récupérez l'objet dom du titre et modifiez-le via t.innerHTML=' ".

Mais est-ce que ça se passera aussi bien ? Bien sûr que non. Notre adorable image vient toujours causer des ennuis à ce moment-là. Dans le navigateur IE, le innerHTML du titre est en lecture seule (non seulement le titre, mais d'autres attributs innerHTML tels que : COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TR sont en lecture seule ). Si l'affectation est forcée, une « erreur d'exécution inconnue » se produira. Pour le moment, je n'ai pas trouvé de bon moyen. Je ne peux qu'ajouter try{}catch(e){} pour le gérer spécialement
Partagez le code source :

. Copier le code Le code est le suivant :




Firefox, pas de problème en chrome, c'est-à-dire pas de problème lorsqu'il y a un ou aucun caractère demi-chasse dans le message d'invite.
Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal