Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui jQueryUI-Prototype:UncaughtTypeError:proto.plugins[i]。推送不是一个函数_Jquery Ui_Prototypejs_Conflicting Libraries - Fatal编程技术网

Jquery ui jQueryUI-Prototype:UncaughtTypeError:proto.plugins[i]。推送不是一个函数

Jquery ui jQueryUI-Prototype:UncaughtTypeError:proto.plugins[i]。推送不是一个函数,jquery-ui,prototypejs,conflicting-libraries,Jquery Ui,Prototypejs,Conflicting Libraries,我试图将工作的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

我试图将工作的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>

但是现在,我无法消除以下错误(不调用任何内容):

未捕获类型错误:proto.plugins[i]。推送不是函数

来自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的
对象
类添加函数。 事实上,jQuery根本不支持简单地扩展javascript的
对象
,因此它的插件也不支持 有一个很好的解决方案,为我解决了jQueryUI的问题

jQuery('#myid').[...]
$.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 ] ] );
        }
    },