将切换应用到给定类的所有元素

Man*_*pta 1 jquery

我正在尝试将 switchery 应用到文档中的所有元素classname="demo-sw"

我可以通过类名将其应用于一个元素。喜欢:

<input id="demo1" class="switchery switchery-primary" type="checkbox" data-switchery="true">
new Switchery(document.document.getElementById('demo1'), {color:'#489eed'});
Run Code Online (Sandbox Code Playgroud)

我如何将它应用于具有 classname 的所有元素demo-sw

我试过:

$('.demo-sw').each(function(i, obj) {
    new Switchery($(this), {color:'#489eed'})
});
Run Code Online (Sandbox Code Playgroud)

$('.demo-sw').each(function(i, obj) {
    new Switchery(i, {color:'#489eed'})
});
Run Code Online (Sandbox Code Playgroud)

但它不起作用。

Ror*_*san 5

文档中,您可以querySelectorAll向插件提供 DOMElements 列表:

var elems = document.querySelectorAll('.demo-sw');
var init = new Switchery(elems, { color:'#489eed' });
Run Code Online (Sandbox Code Playgroud)

如果您更愿意为此使用 jQuery,那么您需要单独循环遍历所选元素并在它们上实例化插件:

$('.demo-sw').each(function() {
    new Switchery(this, { color:'#489eed' })
});
Run Code Online (Sandbox Code Playgroud)

其中,前者是较好的做法。