在我的项目中,我必须使用两个JS库 - jQuery(v1.7.1)和MooTools(v1.4.5)。 我正在使用jQuery.noConflict();一切正常......除了jQuery的拖动元素(jQuery UI对话框)。 任何人都知道在jQuery中修复此功能的方法吗?
我试图在jQuery之前和之后加载Mootools但没有成功。只有移除Mootolls才能解决猖獗的问题。
更新: MooTools中的事件加载导致jQuery拖动问题。这一行:
(function (i, k) {
var l, f, e = [], c, b, d = k.createElement("div");
var g = function () {
clearTimeout(b);
if (l) {
return;
}
Browser.loaded = l = true;
k.removeListener("DOMContentLoaded", g).removeListener("readystatechange", a);
k.fireEvent("domready");
i.fireEvent("domready");
};
var a = function () {
for (var m = e.length; m--;) {
if (e[m]()) {
g();
return true;
}
}
return false;
};
var j = function () {
clearTimeout(b);
if (!a()) {
b = setTimeout(j, 10);
}
};
k.addListener("DOMContentLoaded", g);
var h = function () {
try {
d.doScroll();
return true;
} catch (m) {
}
return false;
};
if (d.doScroll && !h()) {
e.push(h);
c = true;
}
if (k.readyState) {
e.push(function () {
var m = k.readyState;
return(m == "loaded" || m == "complete");
});
}
if ("onreadystatechange" in k) {
k.addListener("readystatechange", a);
} else {
c = true;
}
if (c) {
j();
}
Element.Events.domready = {onAdd:function (m) {
if (l) {
m.call(this);
}
}};
Element.Events.event= {base:"load", onAdd:function (m) {
if (f && this == i) {
m.call(this);
}
}, condition:function () {
if (this == i) {
g();
delete Element.Events.load;
}
return true;
}};
i.addEvent("load", function () {
f = true;
});
})(窗口,文档);