Comments 49
Действительно магия!
Поправьте опечатку: "magick".
Если бы это не был танец с бубном, то назывался он бы logical fixes :)
Если бы это не был танец с бубном, то назывался он бы logical fixes :)
большое спасибо автору за столь интересный материал
Как заботливо сохраняются ссылки на "родные" методы!
UFO just landed and posted this here
Прямо искусственный интеллект какой-то :)
Весьма интересно. Подскажите пожалуйста, а как вы просматриваете скачанные оперой js-файлы?
Есть что-то аналогичное Firebug'у? Очень пригодилось бы.
В своё время искал, но нашел только Developer Console на официальном сайте.
Тоже полезно, но просматривать js-файлы не позволяет.
Есть что-то аналогичное Firebug'у? Очень пригодилось бы.
В своё время искал, но нашел только Developer Console на официальном сайте.
Тоже полезно, но просматривать js-файлы не позволяет.
У меня не работал один сайт в новой Опере (9.5), и я решил написать баг-репорт. Нажал соответствующую кнопочку, отправил. Через неделю где-то сайт чудесным образом заработал, хотя никаких видимых обновлений браузера не было. Списал на то, что сам "недостаточно усердно пытался открывать".
Спасибо, интересная информация. Файл читать интересно.
В принципе они правильные действия делают. Я первый раз натыкаюсь на то, что они кому-то подложили свинью и полагаю (и надеюсь), что таких случаев немного и за этим следят.
P.S.: Заметил что у гугля фиксят календарь, почту и таблицы. Вот бы еще записную книжку сделали писабельной.
В принципе они правильные действия делают. Я первый раз натыкаюсь на то, что они кому-то подложили свинью и полагаю (и надеюсь), что таких случаев немного и за этим следят.
P.S.: Заметил что у гугля фиксят календарь, почту и таблицы. Вот бы еще записную книжку сделали писабельной.
Не соглашусь с вами. Что правильного в том что они фиксят работу своего продукта под конкретные условия. А что если его (сайт) завтра переделают, или пофиксят под оперу? В итоге сайт не будет работать потому что опера фиксит то что уже исправлено/изменено. Мне кажется разработчики сайта должны сами заботиться о работоспособности оного в разных браузерах + Опера заботиться чтобы работали сайты без костылей. А так выглядит все таким образом что программу подгоняют под тесты, то есть на данном наборе данных работает, а чуть в сторону все - не работает. А потом разработчики ломают голову почему один и тот же код на этом сайте работает, а на моем нет :(
Да, понимаю, поддерживаю.
Но мне всё равно нравится подход взять и приделать хотя бы костыль, позаботиться о пользователе.
Я могу быть десять раз верстальщиком/разработчиком сайтов и апологетом стандартов, но мне почти всегда всё равно почему именно криво отображается чей-то сайт. Особенно, если я в нем не был заинтересован. Чаще всего я потребитель.
В Opera могли бы пенять на разработчиков сайтов и прочие отмазы - но они просто со старанием делают своё дело. За это им моё уважение и я с ними надеюсь, что костыли когда-нибудь не понадобятся :)
Но мне всё равно нравится подход взять и приделать хотя бы костыль, позаботиться о пользователе.
Я могу быть десять раз верстальщиком/разработчиком сайтов и апологетом стандартов, но мне почти всегда всё равно почему именно криво отображается чей-то сайт. Особенно, если я в нем не был заинтересован. Чаще всего я потребитель.
В Opera могли бы пенять на разработчиков сайтов и прочие отмазы - но они просто со старанием делают своё дело. За это им моё уважение и я с ними надеюсь, что костыли когда-нибудь не понадобятся :)
Согласен. Особенно учитывая, что тот же Гугль никогда не станет впрягаться, чтобы фиксить свои сервисы для Оперы.
>Но мне всё равно нравится подход взять и приделать хотя бы костыль, позаботиться о пользователе.
ага, и создать 10^n лишних действий для разработчика.
а еще орут за стандарты. кхм на таких костылях до финиша первыми не добежать.
ага, и создать 10^n лишних действий для разработчика.
а еще орут за стандарты. кхм на таких костылях до финиша первыми не добежать.
с какой стороны смотреть - по мне так идея крайне простая и здравая: разработчики сайта заботятся о фиксах для оперы(наверняка опера кантактирует с тем же гуглом), опера фиксает на уровне браузера свои проблемы - ну а всё остальное что пока не исправлено в конкретном сайте(или по каким то причинам - на уровне движка оперы) временно поправлено костылем - пользователь ведь хочет видеть рабочий сайт уже сейчас.
а под тесты никто ничего не подгоняет - тем более что эти фиксы никак не пытаются скрыть(хотели бы скрыть - скрыли бы;))
а под тесты никто ничего не подгоняет - тем более что эти фиксы никак не пытаются скрыть(хотели бы скрыть - скрыли бы;))
"баг починился, но только у меня. Файл browser.js тот же самый, но ошибок не выдает. У остальных ничего не работает и пишет в консоль ошибку"
это тебя опера зауважала... и, в порядке исключения, пустила код работать...
А остальные её "не раскусили", поэтому опера им не дала... работающего кода... :)))
это тебя опера зауважала... и, в порядке исключения, пустила код работать...
А остальные её "не раскусили", поэтому опера им не дала... работающего кода... :)))
Не думаю :)
Больше всего расстраивает в этом тот факт, что не ясно почему так. И так постоянно. Если смотреть на другие браузеры, то там либо работает, либо не работает. А в Опере может работать, а может и не работать - причем причину выяснить часто (как в данном случае) просто невозможно.
Хотя может мы чего то не знаем?
Больше всего расстраивает в этом тот факт, что не ясно почему так. И так постоянно. Если смотреть на другие браузеры, то там либо работает, либо не работает. А в Опере может работать, а может и не работать - причем причину выяснить часто (как в данном случае) просто невозможно.
Хотя может мы чего то не знаем?
афигеть! а вырубить это можно?
Боюсь что нет. Или заставить всех пользователей Опера потереть этот файл? И то мне кажется не поможет, потому что он постоянно обновляется и подгружается.
просто на мой взгляд, это не есть хорошо :)
это же не опера мини. это обычная опера. и если сайты, которые работают везде, не работают в ней - надо и чинить ее, а не сайты...
это же не опера мини. это обычная опера. и если сайты, которые работают везде, не работают в ней - надо и чинить ее, а не сайты...
О чем и речь.
Починить это поведение (то что у меня не работает) можно, но ведь это не особенность работы браузера, а просто заплатка для того чтобы сайты на Prototype работали, и которая "вроде бы никому не мешает". Проверили пару сайтов, на том и успокоились. Теперь я должен сделать заплатку в своем приложении. Завтра они ее "отменят", заплатка будет ненужной. И т.д.?
Что-то мне не нравятся перспективы :)
Починить это поведение (то что у меня не работает) можно, но ведь это не особенность работы браузера, а просто заплатка для того чтобы сайты на Prototype работали, и которая "вроде бы никому не мешает". Проверили пару сайтов, на том и успокоились. Теперь я должен сделать заплатку в своем приложении. Завтра они ее "отменят", заплатка будет ненужной. И т.д.?
Что-то мне не нравятся перспективы :)
Ручками можно.
about:config
Browser JavaScript:
Whether to download and use the browser.js file. Enable by setting to 1, Opera will then download the file and set to 2.
0 = Never download or use
2 = Use and check for updates weekly (default)
1 = browser.js signature invalid. On next check for update, a new browser.js will be downloaded and the value set to 2.
http://www.opera.com/support/usingopera/operaini/
about:config
Browser JavaScript:
Whether to download and use the browser.js file. Enable by setting to 1, Opera will then download the file and set to 2.
0 = Never download or use
2 = Use and check for updates weekly (default)
1 = browser.js signature invalid. On next check for update, a new browser.js will be downloaded and the value set to 2.
http://www.opera.com/support/usingopera/operaini/
UFO just landed and posted this here
Может, стоит в блог оперы перенести?
UFO just landed and posted this here
UFO just landed and posted this here
Когда Opera маскируется под другой браузер, то просто меняет значение UserAgent, все остальное остается прежним.
А насчет правильного фикса, то вот пример того как это делаю я, без ущерба для окружающих. У Оперы есть проблема с методом splice когда второй параметр не указан, то опера ведет себя неверно. Вот фикс:
(function(){
var native = Array.prototype.splice;
if ([1,2,3,4,5].splice(3).length == 2)
Array.prototype.splice =
function(){
var params;
for (var i = 0; i < arguments.length; i++)
params.push(arguments);
if (params.length < 2)
params[1] = this.length;
return native.apply(this, params);
}
})();
Как тут можно заметить, фикс не проверяет - является ли браузер Оперой или другим, он просто знает что у определнных браузеров есть такая проблема - проверяет есть ли у данного. Если да, делаем подмену, если нет - то ничего не меняем.
Представляю, какой вой поднялся бы в комментах, если бы это было обнаружено в MS Explorer-е...
Попробовал изменить browser.js на своей опере - фигвам.
После изменения опера устанавливает Browser JavaScript с 2 на 1 (\Opera9\profile\opera6.ini) и перестает использовать измененный browser.js.
Browser JavaScript
Whether to download and use the browser.js file. Enable by setting to 1, Opera will then download the file and set to 2.
0 = Never download or use
2 = Use and check for updates weekly
1 = browser.js signature invalid. On next check for update, a new browser.js will be downloaded and the value set to 2.
Похоже опера где-то хранит чексумму оригинального browser.js и не дает использовать
модифицированный?
После изменения опера устанавливает Browser JavaScript с 2 на 1 (\Opera9\profile\opera6.ini) и перестает использовать измененный browser.js.
Browser JavaScript
Whether to download and use the browser.js file. Enable by setting to 1, Opera will then download the file and set to 2.
0 = Never download or use
2 = Use and check for updates weekly
1 = browser.js signature invalid. On next check for update, a new browser.js will be downloaded and the value set to 2.
Похоже опера где-то хранит чексумму оригинального browser.js и не дает использовать
модифицированный?
Дневник разработчика из Opera Software, который, в основном, и поддерживает скрипты в
browser.js
.думаю проблема не так страшна - баг репорт - и жс-ник пофиксают в ближайшее время, а т.к. он обнавляется автоматом - то и проблемы с сапортом предыдущих версий нет.
Раньше помню под Делфю пишу код... ну всё правильно нигде не накосячил не компилит хоть что делай: еггоги, варнинги... Ну, думаю Борланд накосячил... потом решаю написать чтоли багрепорт - оставляю до утра. Уторм со свожей головы нахожу свой косяк - вся работает.
Натыкался на такую граблю раза 3. Отсюда мораль: "если думаешь что косячит компилер(браузер,...) значит косячишь ты!"
Натыкался на такую граблю раза 3. Отсюда мораль: "если думаешь что косячит компилер(браузер,...) значит косячишь ты!"
Мдя, отладку данная особенность Оперы затрудняет порой в разы. Сталкивался, причем на примере того же Prototype.
Sign up to leave a comment.
Выкрутасы Opera