jQuery中的目标动态元素

Target dynamic element in jQuery

本文关键字:动态 元素 目标 jQuery      更新时间:2023-09-26

>我有一个选择菜单,它是在javascript文件中动态创建的。我已将 css 设置为 display:none,以便在加载之前可以静默地进行样式设置。但是,我无法定位它以使其再次显示。一旦它附加到 DOM 中,定位它(或任何动态创建的选择菜单)的万无一失的方法是什么?感谢您的任何见解。

加载选择菜单的初始代码:

createDropdown:function(oLetter){
    var dropDwn = create({type:"select",id:"glossaryWordDropdown", className:"glossarySelect"});
    for(var i=0;i<oLetter.arWords.length;i++){
        var oWord = oLetter.arWords[i];
        $('<option />', {value: oWord.id, text: oWord.id}).appendTo(dropDwn);
    }
    $(dropDwn).on('change', this.onDropDown.bind(this));
    //add to the wordHolder box
    var wordHolderElement = this._screen.getElementById("wordHolder");
    wordHolderElement._container.innerHTML = "";
    $(wordHolderElement._container).append(dropDwn);
},

.CSS:

.glossarySelect {display: none};

JQ:

$( window ).load(function() {
    $(".glossarySelect").css("display", "block");
});

自定义插件,使选择框样式可编辑(自定义选择菜单):

$(".glossarySelect").customSelectMenu({
    menuClass: 'product-select',
    openedClass: 'shown',
    selectedClass: 'active',
    selectionMadeClass: 'selected'
});

提前谢谢。

尝试将脚本放入文档就绪侦听器中

$(document).ready(function() {
 $("select").show();
});

或者尝试类似的东西以确保您可以访问元素https://stackoverflow.com/a/29514359/1845664