Как стать автором
Обновить

Комментарии 54

Не согласен. Файербаг, несомненно, незаменимый и значительно более мощный инструмент, но работает он только в ФФ и, к сожалению, часто скрипты работающие в ФФ не работают в ИЕ. И тут на помощь приходит Блэкбёрд, который можно использовать и в ИЕ, и в Опере, и в Вебкитовских браузерах.
А у лайт-версии ФБ есть аналог console.time(name)/console.timeEnd(name) из большого ФБ? Я не нашел. А в Блэкбёрде есть.
Если правильно понимаю данная библиотека отвечает только за вывод, но не как не за отлов ошибок. Поправьте меня если ошибаюсь.
зачем использовать FireBug если есть BlackBird?;)
В blackbird есть инспектор?
а вы не обратили внимание на смайлик вконце?)
Так вроде ж есть FireBug Lite (на JS) под все браузеры
Только под IE он жутко тормозит, если DOM-дерево солидное.
Под IE есть IE Developer Toolbar 1.00.2188.0
Есть. Пользуемся. +)
а можно эту библиотеку использовать как лог действий пользователя)
Отлично, то что искал как раз
надо еще добавить что вызывается окошко по F2
А то пришлось в код заглядывать чтобы найти как же увидеть этот лог
Так об этом в доке написано. Кроме того это окошко можно вызвать программно методом log.toggle().
в архиве только readme.txt и никаких других доков, в readme про это ни слово, только как подключить, но ни слова про то как вызвать
Еще вот сразу не понравилось что он только один параметр принимает. Чтобы функции поддерживали произвольное число параметров замените соотвествующий кусок в файле blackbird.js на следующий:
		join:
			function( arg) {
				if(!arg) return ''; 
				var arr=[];
				for(var i=0; i < arg.length; i++)
					arr[i] = arg[i];
				return arr.join(' ');
			},
		move:
			function() { reposition(); },
		debug: 
			function() { addMessage( 'debug', this.join(arguments)); },
		warn:
			function() { addMessage( 'warn', this.join(arguments) ); },
		info:
			function() { addMessage( 'info', this.join(arguments) ); },
		error:
			function() { addMessage( 'error', this.join(arguments) ); },
Что-то у Вас масло перемасленное получилось — зачем явная функция join, когда можно так:

debug: function () { addMessage('debug', arguments.join(' '))

ну и так далее…
ну если вы такой грамотный, то попробуйте.
хинт: arguments — это не Array, хоть он и поддерживает видимость массива.
Капец. :( Вот до чего Mootools доводит. А вообще, Object.prototype.join = function () {… }, но это, конечно же, не кошерно ;-)
Зато вот так кошерно:

debug: function () { addMessage('debug', Array.prototype.slice.call(arguments).join(' ')) }
ну вот, другое дело! можем когда хотим :-)
поменяю у себя на такой вариант, вернее заменю контент join метода — вместо копирования в новый массив
Ну и на закуску:

alert((function () { return Array.prototype.join.call(arguments, ":") })(1,2,3));
Минус ему за то что он объекты разворачивать не умеет. Надеюсь в будущем научится :)
Когда быстро что-то делаешь, времени подключать и переписывать библиотеки не всегда есть, поэтому лучше alert() только alert().
А если дебагить по серьезному — DragonFly или FireBug.

Но на заметку BB взять можно :)
Много грамматических ошибок, опечаток… Печально.
вся проблема с этими дебажными библиотеками — они не работают там, где реально возникают проблемы :) В частности, IE5.5-
ИЕ можно под Visual Studio отлаживать :)
Только вот не все наберуться храбрости поставить такую IDE чтоб js отлаживать
не юзал, не знаю
Неплохая штука SPKET IDE. Подключается к eclipse, а значит и к аптане, зенду
прошу прощения за «некропостинг», но как Spket или Aptana помогут дебажить JS в IE5.x ?!
да и вообще, дебажить JS? :")
Закачайте к себе на хостинг файлы библиотеки, и расположите их на хостинге.
Потом, включите в страницу файлы blackbird.js и blackbird.css.

alert по-любому проще. и работает во всех браузерах. зачем опять изобретать велосипед?
Бывают ситуации, когда alert не катит. Например в случаях, когда необходимо, чтобы скрипт выполнялся дальше, а alert прерывает его.
Нажмите «OK» на появляющемся окошке и скрипт продолжиться.
Это понятно, что продолжится, но что, если нужно, чтобы он работал непрерывно. Такая ситуация может быть связана с отсечками времени, т. е. пока вы прочтёте и нажмёте «ОК», пройдёт какой-то определённый промежуток времени, чего не должно быть.
Убедили. Просто с такими ситуациями не сталкивался.
в таких случаях я использую другие трюки:
выводит в строку статуса, но в каких-то браузерах надо явно разрешить вывод в статус в настройках:

window.status += ".bla-bla"

или

document.title += ".bla-bla"

так как вывод бывает длинный, а важно видеть последнее, то команды чуть другие:

window.status = ".bla-bla" + window.status
document.title = ".bla-bla" + document.title

Иногда пользуюсь обеими вместе чтобы разделить вывод из разных мест.

Алерт проще, но и хуже намного, я б даже сказал, что алерт ето зло!

Аргументы.

1. Попробуйте включить алерт в вечный цыкл :-) и посмотрите что получиться… (браузер тупо зивиснет)
2. Только в некоторых броузерах (Опере, и ФФ3) можно скопировать текст алерта в бувер обмена.
3. Когда нужно алертнуть большой текст, то алерт оброезает фрагмент текста (переполнение буфера), или его просто нелзя проскролить вниз
4. Алерт приостановливает выполнение скрипта (иногда ето нужно, но не всегда)
Писал уже выше: «Убедили. Просто с такими ситуациями не сталкивался. „
это php, а там js.
Хотя он, конечно же, полезен для отладки серверных скриптов :)
Возможно. Не пробовал. Для меня php — тёмный лес.
Больше подходит как мониторинг переменных, но не как отлов бажей
На первый взляд касно!
Чтото похожее хотел сам писать :-)… теперь не буду…


Не понравились стандартные иконки. Решил засунуть из набора famfamfam silk icons.
У кого-то он заработал? У меня не получается его завести :(
в IE у него проблемы со стилями, переделал и выкосил половину нахрен.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории