なにかをクリックすると何かが開く(表示される)アレ。
JQueryで色々ゴリゴリやってるウェブサイトだとこの部品だけjavascriptに書き換えても恩恵は皆無。
またtoggleのような開閉時にアニメーション付けたいとかはひと手間必要。
HTML構造
.trigger#js-trigger ボタン
.target#js-target
%ul
%li リスト
%li リスト
%li リスト
CSS
.target{
display: none;
&.show{
display: block;
}
}
BEFORE
一般的なJQueryコード
$(function){
$('#js-trigger').click(function(){
$('#js-target').toggleClass('show');
})
}
AFTER
脱JQueryコード
var trigger = document.getElementById('js-trigger');
if(trigger){
trigger.addEventListener('click', function(){
var target = document.getElementById('js-target');
target.classList.toggle('show');
}, false);
}
/* update 2020-01-15*/