重点元素 jquery 更改 css

Focused element jquery change css

我正在寻找一种方法来更改 css 聚焦元素。

input.on("select2-focus", function(elem) {
    console.log('FOCUSING');
    $(this).css('background-color', 'yellow');
});

我想要做的是,点击的焦点元素的背景颜色应该是黄色。

但这不起作用,它什么也没做。

使用此代码检查一次

$(document).on("focus", ".select2-focus", function() {
    console.log('FOCUSING');
    $(this).css('background-color', 'yellow');
});

那是因为 Select2 将隐藏原始输入并在您的页面上创建一个新组件。您的代码以原始输入为目标,该输入是隐藏的并且设置样式不会有任何区别。

但是你可以从input中得到select2容器,像这样:

input.on("select2-focus", function(elem) {
    var $container = $(this).data('select2').$container;
    $container.css('background-color', 'yellow');
});