Есть определенный веб-сайт, который я должен использовать для работы, который абсолютно отвратителен и презирается всеми, кто должен его использовать. В частности, Javascript сайта в корне не работает и работает только в IE, что в значительной степени делает его единственным сайтом, который я должен использовать за пределами моих предпочтительных браузеров.
Итак, к вопросу. Если бы я мог 'пластырь' javascript после загрузки веб-сайта таким образом, как 'сделать правильную вещь', я мог бы использовать веб-сайт без IE.
(Просто чтобы вырезать некоторые из лишних ответов: я уже пробовал замаскировать оба браузера как IE, что не имеет никакого эффекта, потому что проблема связана с javascript, а не с обнаружением браузера на сервере.)
Я бы предпочел решения для Opera, хотя я не против ответов Firefox. Кроме того, я бы предпочел не просматривать сайт через прокси, хотя я буду развлекать такие ответы.
Неа. = D Хорошая попытка. Это веб-сайт для ввода часов для табеля.
Ха! Мне также пришлось написать сценарий GM для нашего приложения расписания.
Я думаю, проблема в том, что люди, которые выбирают веб-сайт расписания, не те люди, которые его используют. И те, кто выбирает, не знают, что существует более одного браузера. L-пользователи ... = D



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Для Firefox вы можете использовать надстройку Грязная обезьяна для этого.
Для этого вы, вероятно, могли бы использовать надстройку Грязная обезьяна для firefox. Это позволило бы вам написать javascript для запуска на их странице и, вероятно, можно было бы использовать это для выполнения «патча» во время выполнения. Я никогда раньше не писал скрипт greasemonkey, поэтому не знаю, насколько легко было бы заставить что-нибудь работать, но, возможно, стоит взглянуть на него.
Для Opera вам нужен Пользовательский JavaScript. Подобно Greasemonkey, но встроено в Opera. Создан для использования именно в той ситуации, в которой вы находитесь: исправление неисправных сайтов в Opera ...
+1 Похоже, именно то. Я попробую и вернусь, чтобы получить зеленый чек, если он решит мою проблему. Спасибо!
ПРОВЕРИТЬ Это именно то, что мне нужно. Пользовательские сценарии JavaScript выполняются перед сценариями JavaScript страницы. Кроме того, Opera имеет семантику для переопределения элементов, которые используют плохие скрипты, чтобы позволить им работать правильно. Спасибо @ Shog9 за этот ответ!
Привет, Аарон, просто отвечу на довольно старый вопрос, чтобы предположить, что если это сайт / приложение, которое другие могут захотеть использовать и в Opera, вы могли бы помочь другим, упаковав и отправив свой пользовательский JS в качестве расширения или даже лучше (если сайт / приложение популярны) - отправьте свой пользовательский JS в Opera и позвольте им запускать его глобально для всех пользователей :) См. my.opera.com/operaqa/blog/2008/09/17/…
@hallvors Признаюсь, я так и не дошел до написания сценария GM, поскольку вскоре после этого мы изменили веб-сайты Timecard (и с тех пор меняли дважды!)
Грязная обезьяна - это именно то, что вам нужно для этого. Я много раз взламывал некоторые сайты, используя его, и на www.greasespot.net есть множество хороших примеров. Хотя эта страница посвящена Opera, у нее есть несколько хороших примеров, которые применимы и к Грязная обезьяна в firefox. Я также заметил, что в Статья в Википедии Greasemonkey есть информация об использовании Greasemonkey или его эквивалентов в других браузерах.
Я не уверен, что GreaseMonkey пригодится для исправления. Сценарии GM запускаются после загрузки страницы и выполнения всех собственных сценариев, поэтому все, что могло сломаться, уже сломалось.
Однако он не обязательно сломан навсегда. Он мог исправить некоторые функции, ввести новые и повторно запустить инициализацию.
В частности, он ломается на основе сценариев, которые запускаются в результате ввода данных пользователем, поэтому исправление после загрузки, но до ввода должно иметь возможность исправить сайт.
Дополнительная информация: Для Opera пользовательские сценарии Javascript запускаются перед сценариями сайта, а сценарии GreaseMonkey - после. В случае с этим сайтом мне действительно нужно внести исправления перед javascript сайта. (глупый html.document.all безумие ...)
Вы также можете использовать прокси (я использовал Proxomitron давно, есть более современные эквиваленты), который изменяет страницу на лету, прежде чем они попадут в браузер ... Таким образом, вы можете удалить весь исходный JavaScript и добавить свой собственный, таким образом, либо с помощью Greasemonkey или пользовательских скриптов.
ох, угадайка! Нравится - звоню в "MSDN"