Я пытаюсь использовать меню Apycom, требующее jQuery 1.3.2 на тех же страницах, что и Flexigrid for Rails, что зависит от jQuery 1.2.3. Чтобы добавить к путанице, я пытаюсь включить prototype.js Rails и использовать это также. Вот мой заказ включает:Использование элементов управления, требующих разных версий jQuery
<%= javascript_include_tag :defaults %>
<%= yield(:head) %>
<script src="/javascripts/jquery.js" type="text/javascript"></script>
<script src="/javascripts/flexigrid.js" type="text/javascript"></script>
<script type="text/javascript">
jq123 = jQuery.noConflict(true)
</script>
<script src="/javascripts/menu/jquery.js" type="text/javascript"></script>
<script src="/javascripts/menu/menu.js" type="text/javascript"></script>
<script type="text/javascript">
jq132 = jQuery.noConflict(true)
</script>
Когда страница я тестирую нагрузки вверх, Firebug дает мне следующее:
$ is undefined
(240 out of range 237) menu.js (line 240)
и, следовательно, мое меню не работает (по крайней мере, не части это вопрос). У меня нет сетки Flexigrid на этой странице, поэтому я не могу подтвердить, работает ли это даже. Я видел этот ответ (How do I run different versions of jQuery on the same page?), но он не работает полностью. Мой локальный JavaScript работает, но плагины jQuery, похоже, не радуют.
Любые предложения?
Я использовал обфусцированный Javascript, поэтому мне нужно на самом деле платить за меню, но была линия : var $ = jQuery, который я изменил на var $ = jq132, и теперь все играет хорошо. Благодаря! –