每当我尝试以这种方式定义2个脚本时:
echo $this->Html->script(array('jquery', 'prototype'));
只有prototype
正在运作。
当我这样做时:
echo $this->Html->script(array('prototype', 'jquery'));
只有jquery
正在运作。
如何修复它以便两者都有效?
答案 0 :(得分:5)
这是因为他们都使用$
变量,第二个脚本会覆盖第一个。
尝试为仅包含以下内容的中间创建脚本:
$j = $.noConflict(); //sets `$j` as the jQuery variable
然后做:
echo $this->Html->script(array('jquery', 'middleScript', 'prototype'));
答案 1 :(得分:2)
在jQuery之后立即添加<script type="text/javascript">jQuery.noConflict();</script>
,然后添加原型。