Работая с Prototype ранее, невозможно заставить его "играть красиво" (сродни режиму jQuery noConflict).
Сам подход за Prototype предотвращает это. Хлеб и масло Prototype происходит из его метода Object.extend (), который вызывается для объектов, как только вы манипулируете ими с помощью методов Prototype. Не говоря уже о том, что Prototype также изменил основные объекты JavaScript, прежде чем связываться с вашими.
С другой стороны, jQuery полностью самодостаточен в объекте jQuery (что, насколько мне известно, все, что он добавляет в пространство имен JavaScript, когда включено).
Существуют ли другие библиотеки с похожими функциями? Конечно, на самом деле, и я уверен, что вы уже устали слышать это, но вы, вероятно, могли бы сделать большую часть этого с помощью jQuery. Однако вы не избежите неизбежного: переписывания кода. Это не будет сделано таким же образом с любой другой платформой, не говоря уже о том, чтобы дать вам те же результаты / поведение.
Ваш выбор таков:
- Удалите прототип и переписайте материал, который использовал его, чтобы использовать что-то еще
- Отбросьте стороннюю библиотеку в пользу альтернативы или отсутствия целиком
- Переписать prototype.js или thirdpartytool.js для хорошей игры (это, конечно, ужасный хак, который вызовет больше головной боли, если вы захотите «обновить» один или оба инструмента в будущем, когда выйдет новый релиз) вне)