这个 JavaScript 函数如何实现
function reset() {
var customSelect = document.getElementsByClassName("custom-select")[0];
var select = customSelect.getElementsByTagName("select")[0];
var selected = customSelect.getElementsByClassName("select-selected")[0];
var selectedItem = customSelect.getElementsByClassName('same-as-selected')[0];
select.selectedIndex = 0;
selected.innerHTML = select.options[select.selectedIndex].innerHTML;
selectedItem.classList.remove('same-as-selected');
}
要转换成jQuery函数吗? 我尝试过像这样的第一个变量:
var customSelect = document.getElementsByClassName("custom-select")[0];
var jqcustomSelect = $(".custom-select:eq(0)").html();
console.log(customSelect + " JQ: " + jqcustomSelect);
但我对输出感到困惑:
customSelect = [object HTMLDivElement]
同时
jqcustomSelect = html code
1) 如何转换这个函数?
2)为什么customSelect输出的是[object HTMLDivElement],而de输出的是html代码?
最佳答案
你的 JQuery 函数应该是这样的
function reset(){
var customSelect = $('.custom-select');
var select = customSelect.find('select');
select.prop('selectedIndex', 0);
customSelect.find('.select-selected').html(select.find('option:selected').html());
customSelect.find('.same-as-selected').removeClass('same-as-selected');
}
试试这个,但如果没有源代码,我不容易测试它
关于javascript - 将 JS 函数转换为 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60599055/