我正在努力将jQuery UI和原型库结合起来,最终实现了以下目标:
<script type="text/javascript" src="/js/jquery-2.1.4.min.js"></script>
<script type="text/javascript" src="/js/scripts.js"></script>
<script type="text/javascript" src="/js/prototype.js"></script>
<script>
var jq = jQuery.noConflict();
// Code that uses other library's $ can follow here.
</script>
<script src="/js/jquery-ui.js"></script>
并这样调用jQuery:
jQuery(function($){
$('#myid').[...]
});
或
jQuery('#myid').[...]
但现在,我无法摆脱以下错误(不调用任何东西):
未捕获的类型错误:proto.plugins[i].push不是函数
来自jquery-ui.js文件,包含以下部分:
$.ui.plugin = {
add: function( module, option, set ) {
var i,
proto = $.ui[ module ].prototype;
for ( i in set ) {
proto.plugins[ i ] = proto.plugins[ i ] || []; // Error fires here
proto.plugins[ i ].push( [ option, set[ i ] ] );
}
},
有解决方案吗?
我遇到了同样的问题。对我来说,原因是我试图向javascript的Object
类添加一个函数。事实上,jQuery及其插件根本不支持简单地扩展javascript的Object
这个对扩展Object
问题的回答很好地解决了我使用jQueryUI的问题。