Pergunta

Eu só comecei a brincar com Mozilla Jetpack , e eu adoro isso até agora. Eu escrevi um pouco de código que exibe um ícone na barra de estado que, quando clicado, abre uma notificação:

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});
    });
  }
});

Como o texto é muito longo, neste exemplo, os olhares de notificação como esta:

Jetpack Notificação http://img33.imageshack.us/img33/7113/jetpack .png

Eu quero dividir o texto da notificação em quatro linhas diferentes quando eles são exibidos de modo caixa de notificação é mais alto e mais estreito. Como eu vou fazer isso?

Editar 1 (graças a Rudd Zwolinski ):

Eu tentei, mas isso não ajuda:

var myBody = line1 + '\n' + line2 + '\n' + line3 + '\n' + line4;

Editar 2 (graças a Ólafur Waage ):

Isto não quer ajudar:

var myBody = line1 + '<br />' + line2 + '<br />' + line3 + '<br />' + line4;

Editar 3 (graças a Matt ):

Mesmo isso não ajuda:

var myBody = line1 + "\n" + line2 + "\n" + line3 + "\n" + line4;
Foi útil?

Solução

Infelizmente, o alerta criado não permite novas linhas para o pop-up brinde no Windows. De acordo com a API Jetpack:

Por fim, este objeto será o fim de tudo ser-tudo de uma comunicação fácil com seus usuários. barras de notificação, mensagens transparentes, grunhidos, maçaneta mensagens, e assim por diante tudo vai por aqui. Por enquanto, ele só tem notificações simples.

Como mostrado na o código-fonte , o método jetpack.notifications.show faz uma chamada para o Mozilla nsIAlertsService , que não permite várias linhas para Windows brinde popups.

A vantagem é que a API indica que você terá muito mais controle sobre alertas no futuro, mas para a versão de pré-lançamento que você terá que manter seu texto de notificação para baixo a um mínimo.

Outras dicas

Eu não posso testar isso porque eu estou em um mac e recebendo notificações Growl de jetpack.notifications.show, e Growl restringe a largura, mas tente mudar myBody a esta:

var myBody = line1 + '\n' + line2 + '\n' + line3 + '\n' + line4;

As quebras de linha não aparecer para mim, então isso pode ser o que você está procurando.

Editar : Isto não funciona para Windows brinde notificações, para que ele não responder à pergunta. No entanto, ele vai mostrar novas linhas em notificações Growl para o Mac OS X , por isso estou deixando esta resposta up.

IIRC corretamente, jetpack usa JavaScript e HTML, por isso tente adicionar <br /> entre as linhas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top