我正在编写一个书签,我想在其中使用 jquery forms 插件。
我遇到的问题是,可能使用书签的网页可能使用不同的 js 库,该库已经使用“$”。没问题,我可以告诉 jQuery 使用 noConflict()
但是,jQuery 的表单插件也使用我无法控制的“$”。有没有办法让我指定这个插件不使用 $ 并使用 jQuery ?
更多细节..
正如 TNi 所说,我可能误解了这个问题。
这就是我所做的
我正在使用 Safari 5。这就是我所做的 (jquery已经加载) ....
var scriptElem = docEl.createElement('script');
scriptElem.setAttribute('src',"http://localhost:81/p/a2b/jquery.form.js");
scriptElem.setAttribute('type','text/javascript');
document.getElementsByTagName('head')[0].appendChild(scriptElem);
然后
jQuery(docEl).ready(function() {
jQuery('#a2b_cart').ajaxForm(function () { alert (" yo");});
});
我在 JavaScript 控制台上看到的内容:
jQuery("#a2b_cart").ajaxForm is not a function
最佳答案
很可能,初始化表单的代码会在添加 script
元素之后、加载之前立即调用。由于 jQuery 已经加载,通过 getScript
调用表单文件:
jQuery.getScript("http://localhost:81/p/a2b/jquery.form.js", function () {
jQuery('#a2b_cart').ajaxForm(function () { alert("yo"); });
// Rest of your code here, or call out to another function
});
// Don't place code here, form.js hasn't loaded yet.
回调函数只会在脚本文件加载后运行。
关于jquery 表单插件 noConflict 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3224899/