====== Объяснения по Browser JavaScript ====== Browser JavaScript — это функция, позволяющая Opera автоматически исправлять несовместимые веб-страницы, устаревшие скрипты, и страницы, которые по неосторожности блокируют Opera. Этот файл скрипта автоматически распространяет Opera Software ASA, и может быть использован для применения исправлений определенных веб-сайтов и определенных скриптов. Browser JavaScript относятся к вашим настройкам JavaScript, и не могут быть загруженны если отключенны JavaScript. **Предупреждение:** Opera также обеспечивает использование [[tutorial:userjs|UserJS]], которые позволяют вам применять ваши собственные расширения и исправления веб-страниц. Дополнительно, Opera Software ASA руководит инициативой [[http://my.opera.com/community/openweb/|Open the Web]], которая поддерживает связь с авторами проблеммных веб-сайтов. ===== Сохранение обновления ===== * Opera автоматически один раз в неделю проверяет обновление Browser JavaScript. Любое из обновлений может быть автоматически загруженно и применено в Opera. * Вы можете вручную проверять наличие обновлений используя ''Справка > Проверить обновления''. * Автоматическая проверка контролируется параметрами ''Browser JavaScript'' и ''Check For New Opera'' в [[docs:Operaini|Opera6.ini]]. * Файлы загружаются отдельно для каждого пользователя, и вам не надо быть администратором на вашем компьютере для того, чтобы использовать эту возможность. * Browser JavaScript подписывает и распространяет Opera Software ASA, и он не должен редактироваться. * Файл сохраняется в директории профиля Opera. Страница ''Справка > О программе'' подскажет вам местонахождение директории вашего профиля. Если вы используете прокси-сервер, который для доступа в Интернет требует имя пользователя и пароль, то примите во внимание, что Opera не будет запрашивать имя пользователя и пароль для аутентификации прокси, чтобы загрузить ua.ini и browser.js. Внесение исправлений сайта или уведомление об обновлении не будут доступны, если требуются такие прокси. ===== Примечания для веб-мастеров ===== Есть несколько причин по которым Opera может модифицировать ваши страницы. Они включают: * Opera может предотвратить детектирование браузера на ваших страницах, которое может вызвать проблемы. * Opera может исправить некорректный, неверный, устаревший или проблемный код на ваших веб-страницах. Если вы считаете, что Opera модифицирует ваши страницы некорректно или излишне, или если вы устранили причину возникновения проблеммы, пожалуйста, напишите нам по адресу . Если вы хотите отключить JavaScript браузера для того, чтобы можно было протестировать ваши изменения, вы можете сделать это установив в Opera6.ini параметр ''Browser JavaScript'' в 0. ===== Исправление сайтов ===== В большинстве случаев, когда Browser JavaScript производит исправление, в консоли JavaScript ''Инструменты > Дополнительно > Консоль JavaScript'' появляется сообщение, говорящее о том, что страница была исправлена. Browser JavaScript активно использует спец. функции Opera ''defineMagicVariable'' и ''defineMagicFunction''. Функция ''defineMagicFunction'' имеет два аргумента: Первый -- название подменяемой функции в виде строки. Второй -- сама функция, которая будет выполнятся вместо неё. Эта функция в свою очередь, при вызове будет иметь как минимум два аргумента: Переменная метода/функции Переменная ''this'' И далее идут аргументы с которыми была вызвана подменяемая фунция. Благодаря этому можно, например, подменив функцию тем не менее вызывать её: window.opera.defineMagicFunction('K',function(oF,oThis,a,b) { oF.apply(oThis,[a,b]); });