2

WebアプリケーションにJqueryMobileをロードするとすぐにこのエラーが発生しますが、残念ながらこの問題の理由を理解できません。私を正しい方向に向けていただけませんか。ありがとう!



Uncaught TypeError: Object function ( name, base, prototype ) {
        var namespace = name.split( "." )[ 0 ],
            fullName;
        name = name.split( "." )[ 1 ];
        fullName = namespace + "-" + name;

        if ( !prototype ) {
            prototype = base;
            base = $.Widget;
        }

        // create selector for plugin
        $.expr[ ":" ][ fullName ] = function( elem ) {
            return !!$.data( elem, name );
        };

        $[ namespace ] = $[ namespace ] || {};
        $[ namespace ][ name ] = function( options, element ) {
            // allow instantiation without initializing for simple inheritance
            if ( arguments.length ) {
                this._createWidget( options, element );
            }
        };

        var basePrototype = new base();
        // we need to make the options hash a property directly on the new instance
        // otherwise we'll modify the options hash on the prototype that we're
        // inheriting from
    //  $.each( basePrototype, function( key, val ) {
    //      if ( $.isPlainObject(val) ) {
    //          basePrototype[ key ] = $.extend( {}, val );
    //      }
    //  });
        basePrototype.options = $.extend( true, {}, basePrototype.options );
        $[ namespace ][ name ].prototype = $.extend( true, basePrototype, {
            namespace: namespace,
            widgetName: name,
            widgetEventPrefix: $[ namespace ][ name ].prototype.widgetEventPrefix || name,
            widgetBaseClass: fullName
        }, prototype );

        $.widget.bridge( name, $[ namespace ][ name ] );
    } has no method 'extend' jquery.mobile-1.2.0.js:568
    $.Widget._createWidget jquery.mobile-1.2.0.js:568
    $.(anonymous function).(anonymous function) jquery.mobile-1.2.0.js:405
    (anonymous function) jquery.mobile-1.2.0.js:541
    jQuery.extend.each jquery-1.8.2.js:611
    jQuery.fn.jQuery.each jquery-1.8.2.js:241
    $.fn.(anonymous function) jquery.mobile-1.2.0.js:536
    (anonymous function) jquery.mobile-1.2.0.js:1091
    jQuery.event.dispatch jquery-1.8.2.js:3063
    elemData.handle.eventHandle jquery-1.8.2.js:2681
    jQuery.event.trigger jquery-1.8.2.js:2946
    (anonymous function) jquery-1.8.2.js:3604
    jQuery.extend.each jquery-1.8.2.js:611
    jQuery.fn.jQuery.each jquery-1.8.2.js:241
    jQuery.fn.extend.trigger jquery-1.8.2.js:3603
    $.extend.initializePage jquery.mobile-1.2.0.js:9082
    (anonymous function) jquery.mobile-1.2.0.js:9140
    fire jquery-1.8.2.js:974
    self.fireWith jquery-1.8.2.js:1082
    jQuery.extend.ready jquery-1.8.2.js:406
    DOMContentLoaded
4

2 に答える 2

18

おそらく遠い過去のある時点で必要だったjquery.ui.widget.js を削除することでこれを修正しましたが、現在は必要ありません。

于 2012-10-18T15:59:49.927 に答える
0

I realize that the problem was appearing when jquery ui library was loaded. After some digging I found out the the two libraries could have some issue.

于 2012-10-08T06:08:32.277 に答える