Ответ 1
Мнение: Изучите MooTools, а затем перейдите к нему. Звучит как отличная возможность узнать что-то новое. Зачем вводить совершенно новую библиотеку с добавлением js bloat, если вам это не нужно. Если это решит проблему, вы будете золотыми.
Я просто унаследовал некоторые веб-страницы, которые используют MooTools. Я никогда не использовал MooTools. Теперь мне нужно добавить некоторые функции на странице, интересно, полезно ли использовать jquery и mooTools на одной странице?
В принципе, у меня есть 3 варианта,
Ваше мнение будет оценено.
Мнение: Изучите MooTools, а затем перейдите к нему. Звучит как отличная возможность узнать что-то новое. Зачем вводить совершенно новую библиотеку с добавлением js bloat, если вам это не нужно. Если это решит проблему, вы будете золотыми.
MooTools - абсолютно солидная и приемлемая библиотека Javascript, и я бы рекомендовал вам добавить ее в список известных технологий, а не разорвать ее и заменить на JQuery. Смешивание двух не является хорошей идеей, так как вы, вероятно, столкнетесь с неясными трудностями для отладки конфликтов.
У JQuery была вся пресса в последнее время, но она ни в коем случае не вырезана и не высушена, что она бьет каждую другую библиотеку. Отнюдь не. Вы даже можете найти, что предпочитаете MooTools: -)
ДОБАВЛЕНО: для того, что стоит мой личный опыт, MooTools, похоже, играет рядом с другим кодом javascript более красиво, чем jQuery. Я обрабатывал несколько сайтов в последнее время, которые смешивались в MooTools с различными другими частями Javascript для различных эффектов/функциональности, и все это, казалось, играло вместе с минимальными проблемами. Страницы OTOH, использующие jQuery, как правило, используют версии jQuery всего. YMMV, конечно.
Лично я бы не рекомендовал использовать оба варианта, поскольку есть странные конфликты, даже с jQuery.noConflict()
. Пойдите с тем или другим.
Если вы в конечном итоге используете оба варианта, обязательно используйте jQuery.noConflict()
, чтобы убедиться, что использование $
не конфликтует.
Я бы сказал, зависит от того, как структурирован код и что вам нужно делать. mootools делает себя для простого рефакторинга и расширения (это, в конце концов, отчасти причина, по которой он существует), но требуется некоторое время, чтобы понять лучшие практики и так далее.
однако, ваша кривая обучения из javascript или jquery из ванили не будет слишком крутой, особенно, если все, о чем вы заботитесь, это мантипуляция DOM, обработка событий и эффекты. вещи становятся более интересными, когда вы решаете писать/расширять классы mootools и участвовать в прототипировании - но вам, возможно, не придется это делать...
для большинства вещей есть несколько довольно хороших обучающих программ, а также некоторые демонстрации по работе с jQuery и mootools (эквивалентные). http://jqueryvsmootools.com/ является хорошим примером того, как одна и та же задача может быть выполнена через одну, я бы рекомендовал ее прочитать перед тем, как решить.
что бы вы ни решили, это плохая практика использования двух фреймворков (когда вы можете обойтись).
Это зависит от того, насколько большим будет проект, который нужно преобразовать в jQuery, насколько ваша работа поддерживает эти страницы (и другие страницы, которые уже используют jQuery), какова срочность для вашего первого набора изменений и т.д...
Это сводится к сопоставлению затрат: как стоимость вашего бизнеса для преобразования их в jQuery по сравнению с затратами на бизнес для вас, чтобы узнать mooTools (и, возможно, одновременно сохранить как mootools, так и jquery в вашей голове).
Единственное, что я могу сказать наверняка, это не вариант 3. Это не обязательно потому, что вы не можете заставить его работать (и будут проблемы), а потому, что вам нужно будет изучить mootools для правильного ведения страниц в любом случае. Как только вы это сделаете, вы можете просто держать их mootools, а не переписывать все или пытаться смешивать фреймворки.
Лично я склонен сказать, что это конвертировать jQuery, так как я верю jQuery в конечном итоге собирается углубить рынок. Следовательно, подразумевается, что в какой-то момент он будет преобразован в jQuery, поэтому долгосрочные затраты для бизнеса, вероятно, лучше всего оптимизируются, если раньше конвертировать, а меньше конвертировать и mootools по-прежнему актуальны, поэтому вы можете легко получить помощь в преобразовании, Но это, конечно, спорно.
Основы jQuery и Mootools достаточно близки, что переход от одного к другому - это не большая головная боль.
Всякий раз, когда мне дают выбор между ними, я склоняюсь к Mootools - особенно, если я намереваюсь делать какие-то эффекты или анимации. Базовые библиотеки FX Mootools гораздо более надежны и обеспечивают лучший кросс-браузер в моем опыте.
Как и другие, вы могли бы воспользоваться этой возможностью в качестве учебного опыта. Если вы удовлетворены jQuery и не чувствуете необходимости изучать другую инфраструктуру, переносите код. В конце концов, вы не можете поступить неправильно.
Поскольку вам удобнее работать с jQuery, я просто позвоню jQuery.noConflict();
, и напишу функции в jQuery. Это, конечно, если время является фактором.
Существует проект, который закручивает и затыкает Mootools, чтобы он выглядел как JQuery (волк в овечьей одежде... или золотая монета, окрашенная, чтобы выглядеть как серебро...)
Я, конечно, думаю, что вы должны изучить Mootools, но это может помочь.
Я согласен с теми, которые выступают за изучение учебников, но я думаю, что это даже лучше, если вы принимаете это решение, потому что, наконец, думаете, что обучение mootools стоит того.
Итак, я думаю, было бы неплохо провести некоторое исследование возможностей mootools.
Мне нравится эта артикуляция по этому вопросу. И я думаю, что это может быть полезно для тех, кто читает эту тему.
Я написал сообщение в блоге о запуске 2 бок о бок. http://chrisbarba.wordpress.com/2009/12/30/need-to-run-jq... s-side-by-side/
Мне не удалось заставить его работать на сайте SharePoint. Крис