私は自分の JavaScript (パターン、名前空間、オブジェクトなど) を始めたばかりで、最新のプロジェクトでこれらのいくつかを実践しようとしています。
シンプルなフォームがあり、チェックボックスがオンになっていることに基づいて何かを表示/非表示にしようとしています。HTML を変更することはできません (長い話) ので、当面の JavaScript の問題にのみ焦点を当てています。
スクリプト(これは確かに要約できる)は以下のとおりです。
var prereg = {
hideItems: (function() {
document.getElementById('companyName-element').style.display = 'none';
document.getElementById('companyName-label').style.display = 'none';
})(),
showItems: function() {
var checkbox = document.getElementById('businessCustomer');
if(checkbox.checked) {
document.getElementById('companyName-element').style.display = 'block';
document.getElementById('companyName-label').style.display = 'block';
} else {
document.getElementById('companyName-element').style.display = 'none';
document.getElementById('companyName-label').style.display = 'none';
}
},
addEvent: function (el, ev, fn) {
if (el.addEventListener) {
el.addEventListener(ev, fn, false);
} else if (el.attachEvent) {
el.attachEvent('on' + ev, fn);
} else {
el['on' + ev] = fn;
}
}
}
prereg.addEvent(document.getElementById('businessCustomer-label'), 'click', prereg.showItems);
prereg.addEvent(document.getElementById('businessCustomer-element'), 'click', prereg.showItems);