Viendo las notificaciones de varias líneas
-
23-08-2019 - |
Pregunta
acabo de empezar a jugar con Mozilla Jetpack , y lo amo hasta ahora. Escribí un pequeño código que muestra un icono en la barra de estado que, al hacer clic, aparece una notificación:
var myTitle = 'Hello World!';
var line1 = 'I am the very model of a modern Major-General,';
var line2 = 'I\'ve information vegetable, animal, and mineral,';
var line3 = 'I know the kings of England, and I quote the fights historical,';
var line4 = 'From Marathon to Waterloo, in order categorical.';
var myBody = line1 + ' ' + line2 + ' ' + line3 + ' ' + line4;
var myIcon = 'http://www.stackoverflow.com/favicon.ico';
jetpack.statusBar.append({
html: '<img src="' + myIcon + '">',
width: 16,
onReady: function(doc) {
$(doc).find("img").click(function() {
jetpack.notifications.show({title: myTitle, body: myBody, icon: myIcon});
});
}
});
Debido a que el texto es muy largo en este ejemplo, la notificación se parece a esto:
Jetpack Notificación http://img33.imageshack.us/img33/7113/jetpack .png
Quiero dividir el texto de la notificación en cuatro líneas diferentes cuando se muestran por lo que el cuadro de notificación es más alto y más estrecho. ¿Cómo hago para hacer esto?
Editar 1 (Gracias a Rudd Zwolinski ):
Lo intenté, pero esto no ayuda:
var myBody = line1 + '\n' + line2 + '\n' + line3 + '\n' + line4;
Editar 2 (Gracias a Ólafur Waage ):
Esto no ayuda, ya sea:
var myBody = line1 + '<br />' + line2 + '<br />' + line3 + '<br />' + line4;
Editar 3 (Gracias a Matt ):
A pesar de esto no ayuda:
var myBody = line1 + "\n" + line2 + "\n" + line3 + "\n" + line4;
Solución
Por desgracia, la alerta creada no permite nuevas líneas para el emergente tostadas en Windows. De acuerdo con la API de Jetpack:
Finalmente, este objeto será el fin de todo ser, toda la comunicación fácil con sus usuarios. barras de notificación, mensajes transparentes, gruñidos, pomo de la puerta mensajes, y así sucesivamente todos irán a través de aquí. Por ahora, sólo tiene simples notificaciones.
Como se muestra en el código fuente , el método jetpack.notifications.show
hace una llamada a la Mozilla nsIAlertsService
, que no permite que múltiples líneas para las ventanas emergentes de Windows tostadas.
La ventaja es que la API indica que usted va a tener mucho más control sobre alertas en el futuro, pero para la versión pre-lanzamiento que tendrá que mantener su texto de notificación a un mínimo.
Otros consejos
No puedo probar esto porque estoy en un Mac y recibir notificaciones de Growl de jetpack.notifications.show
, y gruñir limita el ancho, pero trate de cambiar myBody
a esto:
var myBody = line1 + '\n' + line2 + '\n' + line3 + '\n' + line4;
Los saltos de línea no se presentan a mí, así que esto podría ser lo que estás buscando.
Editar : Esto no funciona para las notificaciones tostadas de Windows, por lo que no responde a la pregunta. Sin embargo, se mostrará nuevas líneas en las notificaciones de Growl para Mac OS X , así que estoy dejando esta respuesta hacia arriba.
IIRC correctamente, jetpack utiliza JavaScript y HTML, por lo que sólo trate de añadir <br />
entre líneas.