我正在一个大型网站工作,该网站有两个相互冲突的 jquery 插件用于执行自动完成。
1)jquery.autocomplete.js(不是jquery ui的一部分),它的作用是:
$.fn.extend({
autocomplete: function ...
2)jquery.ui.autocomplete.js(来自最新的jquery ui库),也使用autocomplete关键字。
$.widget( "ui.autocomplete", { ...
有没有办法指定我只使用第二个 jquery.ui 小部件
打电话时
$( "#tags" ).autocomplete ...
不改变这2个文件?
由于第二个自动完成功能正在使用$.Widget
通过使用 jQuery 注册自身的方法,更改内部方法的行为将是最简单的。
如果不进行以下操作,您将无法加载它们some在两个脚本加载之间对 jQuery 对象进行某种更改,因为它们只会相互冲突(或覆盖)。
我会尝试这个:
<script src="jquery.autocomplete.js"> </script>
<script>
// rename the local copy of $.fn.autocomplete
$.fn.ourautocomplete = $.fn.autocomplete;
delete $.fn.autocomplete;
</script>
<script src="jquery-ui.autocomplete.js"> </script>
这将使得:
$().autocomplete()
使用 jQuery UI 版本,并且
$().ourautocomplete()
使用您的本地版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)