window.onload=function(){
document.getElementsByTagName('form')[0].onclick=function(e){
e=e||window.event;
var src=e.srcElement||e.orginalTarget;
var txt=document.getElementById('txt');
switch(src.getAttribute('value')){
case '改變顏色':
txt.style.color='red';
txt.style.backgroundColor='#CCC';
break
case '改變寬高':
txt.style.width='300px';
txt.style.height='200px';
break
case '隱藏內容':
txt.style.display='none';
break
case '顯示內容':
txt.style.display='block';
break
case '取消設置':
confirm('是否取消設置')?txt.removeAttribute('style'):'';
break
}
}
}
參照@mukewang_jiayou同學寫的,最后的的取消設置用的是removeAttribute方法。
優點:寫法優雅,不用在元素中綁定事件,實現元素與操作的分離,代碼更加優雅。
缺點:直接綁定form表單的事件,通過判斷事件來源來處理操作,后期不易拓展。
希望能有更好的寫法得以借鑒。
2014-09-01
good,能說出優缺點,你很用心哦~