MooTools正在搞乱Facebook JavaScript SDK
我有一个页面,页面中使用了MooTools,我还添加了facebook sdkMooTools正在搞乱Facebook JavaScript SDK,javascript,mootools,facebook-javascript-sdk,apprequests,Javascript,Mootools,Facebook Javascript Sdk,Apprequests,我有一个页面,页面中使用了MooTools,我还添加了facebook sdk <script src="http://code.jquery.com/jquery-1.7.1.min.js" type="text/javascript"></script> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-comp
<script src="http://code.jquery.com/jquery-1.7.1.min.js" type="text/javascript"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1.3.0/mootools-yui-compressed.js"></script>
但这在all.js文件中给了我“a为空”。如果我删除MooTools文件,一切正常。但我需要工具。如何解决这个问题?有什么帮助吗?在jquery之后加载mootools。这意味着它将不会接管
$
,并返回到自己的noConflict模式,选择器的别名仅为document.id
您的所有mootools代码都需要使用它,或者使用简单的闭包模式,在mootools中使用$
到document.id
$; // jQuery
(function($) {
$; // mootools
})(document.id);
当使用MOOToo工具时要考虑的其他事项:它是典型的。确保你不做愚蠢的事情,比如。。。在阵列上的循环中,不进行hasOwnProperty检查(一开始就不是个好主意,但它比人们想象的更广泛…)
除上述内容外,您还需要跟踪到失败的特定代码位。很可能是将jQuery函数传递给mootools认为是元素的对象,例如,
$('foo')
,此时jQuery不会返回元素对象。即使是$('foo')
也不起作用,但$('foo')[0]
会起作用 在jquery之后加载mootools。这意味着它将不会接管$
,并返回到自己的noConflict模式,选择器的别名仅为document.id
您的所有mootools代码都需要使用它,或者使用简单的闭包模式,在mootools中使用$
到document.id
$; // jQuery
(function($) {
$; // mootools
})(document.id);
当使用MOOToo工具时要考虑的其他事项:它是典型的。确保你不做愚蠢的事情,比如。。。在阵列上的循环中,不进行hasOwnProperty检查(一开始就不是个好主意,但它比人们想象的更广泛…)
除上述内容外,您还需要跟踪到失败的特定代码位。很可能是将jQuery函数传递给mootools认为是元素的对象,例如,
$('foo')
,此时jQuery不会返回元素对象。即使是$('foo')
也不起作用,但$('foo')[0]
会起作用 这篇文章可能会有帮助,谢谢。。。它只是解决了$conflict的问题。虽然我试过了,但那对我没有帮助。。我意识到问题不是jQuery。这是因为Moo工具。这就是为什么需要使用jquery冲突的原因。刚才回答了这样一个问题:你不能用jQuery来表示mootools在做什么,或者用mootools来表示jQuery在做什么?我经常看到这一点,在一个应用程序或站点中包含两个非常强大但很大的libs似乎总是毫无意义和浪费的…这篇文章可能会有所帮助,谢谢。。。它只是解决了$conflict的问题。虽然我试过了,但那对我没有帮助。。我意识到问题不是jQuery。这是因为Moo工具。这就是为什么需要使用jquery冲突的原因。刚才回答了这样一个问题:你不能用jQuery来表示mootools在做什么,或者用mootools来表示jQuery在做什么?我经常看到这一点,在一个应用程序或站点中包含两个非常强大但很大的lib似乎总是毫无意义和浪费的。。。
$; // jQuery
(function($) {
$; // mootools
})(document.id);