this.Element.uniqueID不是一个函数.jQuery UI



我使用了jQuery UI和jQuery ui selectMenu。

这是package.json

中依赖项的版本

" jQuery":"^3.3.1", " jQuery-ui":"^1.11.2", " jquery-ui.selectmenu.extended":"^1.1.0",

但是当我运行项目时,我得到了这个

typeError:this.element.uniqueid不是函数

我更改了这些行

var selectmenuId = this.element.uniqueId().attr( "id" );
var selectmenuClass = this.element.uniqueId().attr( "class" );

到那些

var selectmenuId = this.element.attr( 'id' ) || 'ui-selectmenu-' + Math.random().toString( 16 ).slice( 2, 10 );
    var selectmenuClass = this.element.attr( 'class' ) || 'ui-selectmenu-' + Math.random().toString( 16 ).slice( 2, 10 );

现在我有这个错误

:this.element.zindex不是函数

我如何解决它,并且像我一样解决1个问题的正确方法是正确的吗?

update

好吧,我解决了第一个问题,但是现在我有z index

有问题

在这里

this.listWrap
        .removeAttr( 'style' )
        .zIndex( this.element.zIndex() + 2 )
        .position( $.extend( positionDefault, o.positionOptions ) );
}

this.element.zindex不是函数

您遇到的第一个问题是this.element.uniqueId不是function,这意味着this.elementundefined,或this.element.uniqueId是其他的,而不是function

在您的第二个代码中

this.listWrap
        .removeAttr( 'style' )
        .zIndex( this.element.zIndex() + 2 )
        .position( $.extend( positionDefault, o.positionOptions ) );
}

zIndex是您遇到的问题,考虑到它是CSS属性,这并不奇怪。您可以这样做:

    yourobject.css('z-index', parseInt(this.element.css('z-index')) + 2 )

最新更新