我正在使用CakePHP并使用2个javascript脚本,其中一个依赖于jQuery。
在其中一个javascripts中使用$ variable与jQuery冲突,因此
我必须在cakephp中包含以下代码:
<?php
$this->Js->JqueryEngine->jQueryObject = '$j';
print $this->Html->scriptBlock('var $j = jQuery.noConflict();', array('inline' => false));
?>
这使得javascript + jQuery包含工作正常。然后我想添加另一个需要jQuery的javascript - 但是我得到了以下错误:
Uncaught TypeError: Object function $(element) { if (arguments.length > 1) {
for (var i = 0, elements = [], length = arguments.length; i < length; i++)
elements.push($(arguments[i]));
return elements; } if (Object.isString(element))
element = document.getElementById(element); return Element.extend(element);} has no method 'extend'
我不是一个庞大的javascript buff。但这让我感到困惑,显然存在冲突 - 请帮助我完成基于jQuery的脚本工作。
谢谢,
答案 0 :(得分:2)
您需要使用在无冲突部分中定义的无冲突选择器,即$ j而不是简单的$。