Отображение многострочных уведомлений

Я только начал играть с Mozilla Jetpack, и я люблю его до сих пор. Я написал небольшой код, который отображает значок в строке состояния, который при нажатии вызывает уведомление:

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

поскольку текст в этом примере очень длинный, уведомление выглядит следующим образом:

уведомления ранец http://img33.imageshack.us/img33/7113/jetpack.png

Я хочу разделить текст уведомления на четыре различные линии, когда они отображаются, поэтому поле уведомлений выше и уже. Как мне это сделать?

Edit 1 (Спасибо Радд Зволинский):

Я пробовал, но это не помогает:

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

Edit 2 (благодаря Вааге Олафура):

это тоже не помогает:

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

Edit 3 (благодаря матовая):

даже это не помогает:

var myBody = line1 + "n" + line2 + "n" + line3 + "n" + line4;

3 ответов


к сожалению, созданное предупреждение не позволяет создавать новые строки для всплывающего окна тостов в Windows. Согласно API Jetpack:

в конце концов, этот объект будет конец-все быть-все из легкого общения с вашими пользователями. Бары уведомление , прозрачные сообщения, рычание, дверная ручка послания, и так далее все пойдет сюда. на данный момент, он просто есть простые уведомления.

как показано в исходный код, the jetpack.notifications.show метод делает вызов Mozilla nsIAlertsService, что не позволяет несколько строк для всплывающих окон Windows toast.

преимущество в том, что API указывает, что в будущем у вас будет гораздо больше контроля над предупреждениями, но для предварительной версии вам придется свести текст уведомления к минимуму.


Я не могу проверить это, потому что я на Mac и получать уведомления Growl от jetpack.notifications.show, и Growl ограничивает ширину, но попробуйте изменить myBody для этого:

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

разрывы линии появляются для меня, так что это может быть то, что вы ищете.

редактировать: это не работает для уведомлений Windows toast, поэтому он не отвечает на вопрос. Однако,он покажет новые строки в уведомлениях Growl для Mac OS X, так что я ухожу этот ответ вверх.


IIRC правильно, jetpack использует JavaScript и HTML, поэтому просто попробуйте добавить <br /> между строк.