我在视图中使用 jQuery-1.7.2 .js 。当我使用第一个js然后错误没有来,我执行我的任务没有没有错误,但当我包括我的第二个js然后我面临错误,错误是 $(...)。attr不是一个函数< /强> 这是代码
这是视图
<a title="Minimize Chat Window" class="abc" id="minmax" href="#Minimize Chat Window" onclick="min_max(this);">
这是js
<script src="<?=base_url()?>js/libs/jquery-1.7.2.min.js"></script>
<script type="text/javascript" >
function min_max(i)
{
var cls=$(i).attr('class');
if(cls == 'abc')
{
$(i).removeClass('xyz');
}
else
{
$(i).addClass('xyz');
}
}
但是当我在第一个之后或之前加入我的第二个js然后
var cls=$(i).attr('class');
给出 $(...)。attr不是函数的错误
请帮助我找出问题。我认为它的jquery有冲突。但我想在我看来使用两个js。感谢
答案 0 :(得分:2)
要避免此类问题,请使用jQuery
的{{1}}功能,然后使用noConflict()
来电更改$()
次来电。
答案 1 :(得分:1)
排除var cls=$(i).attr('class');
var cls=jQuery(i).attr('class');
在此处查看有关noConflict的更多信息:http://api.jquery.com/jQuery.noConflict/
答案 2 :(得分:1)
在您的脚本标记开始后,只需使用此行 var $ = jQuery.noConflict(); ,然后您可以使用 $ 而不是 Jquery < / p>
<script src="<?=base_url()?>js/libs/jquery-1.7.2.min.js"></script>
<script type="text/javascript" >
var $ = jQuery.noConflict();
function min_max(i)
{
var cls=$(i).attr('class');
if(cls == 'abc')
{
$(i).removeClass('xyz');
}
else
{
$(i).addClass('xyz');
}
}