Es muy común usar el título web para solicitar a los usuarios para nuevos mensajes, como Weibo y algunas direcciones de correo electrónico, que son muy comunes. ¿Cómo implementar una función?
La idea es: acceder al fondo a través de AJAX. Ejemplo: [tiene nuevas noticias] y [] alternar. El contenido rápido es dinámico, por lo que también se calcula el número de espacios en el texto de reemplazo. Use espacios de ancho completo aquí. Sin embargo, si hay caracteres de medio ancho como el 'número' en el mensaje de inmediato, habrá problemas. Los espacios en el ancho completo son mucho más amplios que el ancho del medio ancho 1. De esta manera, no será muy cómodo flashear;
Pero document.title = ''; no importa cuántos espacios de medio ancho estén, el navegador solo muestra uno. Si se usa, sale como es; Obtenga el título del objeto DOM y modifíquelo por t.innerhtml = ''.
Pero saldrá tan bien, por supuesto que no. Nuestro lindo IE siempre saldrá a causar problemas en este momento. En el navegador IE, el interno del título es de solo lectura (no solo el título, sino los atributos internos de col, colgroup, frameset, html, style, table, tbody, tfoot, thead, tr son solo lecturas). Si se realiza una asignación forzada, se producirá un "error de tiempo de ejecución desconocido". En la actualidad, no he encontrado una muy buena solución, por lo que solo puedo agregar try {} capt (e) {} para tratarlo especialmente
Comparta el código fuente:
La copia del código es la siguiente:
<script type = "text/javaScript" lenguaje = "javaScript">
var flashtitlePlayer = {
Inicio: función (msg) {
this.title = document.title;
if (! this.action) {
intentar {
this.element = document.getElementsByTagName ('title') [0];
this.element.innerhtml = this.title;
this.action = function (ttl) {
this.element.innerhtml = ttl;
};
} catch (e) {
this.action = function (ttl) {
document.title = ttl;
}
Eliminar esto.Element;
}
this.TogGletitle = function () {
this.action ('【' + this.messages [this.Index = this.index == 0? 1: 0] + '] Bienvenido a la magia moderna simple ");
};
}
this.messages = [msg];
var n = msg.length;
var s = '';
if (this.element) {
var num = msg.match (// w/g);
if (num! = null) {
var n2 = num.length;
n -= n2;
while (n2> 0) {
s += "";
N2--;
}
}
}
while (n> 0) {
s += '';
norte--;
};
this.messages.push (s);
this.index = 0;
this.timer = setInterval (function () {
flashtitlePlayer.TogGletitle ();
}, 1000);
},
parar: function () {
if (this.timer) {
ClearInterval (this.timer);
this.action (this.title);
Eliminar esto. Timer;
Eliminar esto. Messages;
}
}
};
función flashtitle (msg) {
flashtitlePlayer.Start (msg);
}
function stopflash () {
flashtitlePlayer.stop ();
}
</script>
Firefox, no hay problema bajo Chrome, no hay problema cuando se le solicita IE que hay uno o ningún personaje de medio ancho en el mensaje.