使用jQuery和原型时的冲突,已经用jQuery.noConflict()解决了

时间:2011-10-25 15:08:22

标签: javascript prototypejs jquery

我正在使用jQuery,jQuery mobile,prototype和photoswipe的组合。 我知道由于$快捷方式的使用,jQuery和原型之间存在冲突。所以我做了jQuery.noConflict()。现在,在我的Firebug控制台中,它不再报告任何错误。但是,当我转到Firebug DOM标签时,我看到: enter image description here 当我查看第4725行时,它是var $continue = new Error('"throw $continue" is deprecated, use "return" instead');。在我使用jQuery.noConflict()之前,我得到的错误是哪个。我应该担心吗?

以下是我的HTML文件中的一些代码段:

<script type="text/javascript" src="jsandcss/prototype.js"></script>
<script type="text/javascript" src="jsandcss/jquery-1.6.4.min.js"></script>
<script type="text/javascript" src="jsandcss/jquery.mobile-1.0rc2.min.js"></script>
<script type="text/javascript" src="jsandcss/klass.min.js"></script>
<script type="text/javascript" src="jsandcss/code.photoswipe.jquery-2.1.6.min.js"></script>
<link href="jsandcss/jquery.mobile-1.0rc2.min.css" type="text/css" rel="stylesheet" />
<script>
    var $j = jQuery.noConflict();

   $j(document).ready(function(){
    });
</script>

1 个答案:

答案 0 :(得分:0)

我不确定我是否理解你是如何看到这个错误的,但是$ continue是一个错误对象,在原型1.5之前(如果我还记得)你可以用来在原型迭代中模拟continue关键字(使用方法,搜集, ...)。现在你可以简单地在迭代函数中返回。 FYI $ break是相同的,它是一个预定义的错误,如$ continue,你可以抛出来模拟原型迭代中的中断。这个仍保留在活动原型版本中,但现在不推荐使用$ continue。

所以是的$ continue和$ break是全局的(=由窗口对象拥有)并且有一些错误,但是还没有被抛出,只是实例化了。

希望这些信息有用。