Можно ли переопределить / обновить Prototype версии 1.4 до версии 1.7 на другом сайте через javascript? - PullRequest
1 голос
/ 21 апреля 2011

(я не совсем уверен, как озаглавить этот вопрос, не стесняйтесь редактировать).

Я встраиваю виджет JS на другой веб-сайт, который использует Prototype.js версии 1.4. Я использую jQuery в своем виджете, поэтому он уже работает в режиме без конфликтов. (Я где-то читал, что версия 1.4 прототипа «просто не очень хорошо играет» с jQuery, даже в бесконфликтном режиме. Я могу уточнить, но это, вероятно, другой вопрос.)

Я не могу изменить, какую версию Prototype включил веб-сайт клиента, но если бы я мог «выгрузить и перезагрузить» прототип с последней версией 1.7, которая бы исправила мои конфликтные проблемы.

Есть идеи, если это возможно? Спасибо

1 Ответ

0 голосов
/ 21 апреля 2011

Маловероятно.

Вы можете изменить атрибут src тега <script>, который включает в себя прототип 1.4. Это может быть сделано в $(document).ready();

Однако задача будет заключаться в том, чтобы сделать это (используя Prototype 1.7) до запуска / запуска остальных кодов / событий на странице. Когда конкурируют события jQuery и Prototype, нетрудно узнать, что сработало, а что нет. Гораздо меньше перезагрузка кода.

Я уверен, что это возможно с помощью какого-то блокирующего вызова. Может быть, кто-то опубликует. Но тогда вам приходится иметь дело с каким-то синхронным вызовом, что делать, если ресурс недоступен и т. Д.

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

...