让select支持onClick

摘自fins的,留以备用

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
<html>  
 <head>  
  <title>select-option onclick </title>  
<script type="text/javascript" >  
  
function simOptionClick4IE(){   
    var evt=window.event  ;   
    var selectObj=evt?evt.srcElement:null;   
    // IE Only   
    if (evt && selectObj &&  evt.offsetY && evt.button!=2   
        && (evt.offsetY > selectObj.offsetHeight || evt.offsetY<0 ) ) {   
               
            // 记录原先的选中项   
            var oldIdx = selectObj.selectedIndex;   
  
            setTimeout(function(){   
                var option=selectObj.options[selectObj.selectedIndex];   
                // 此时可以通过判断 oldIdx 是否等于 selectObj.selectedIndex   
                // 来判断用户是不是点击了同一个选项,进而做不同的处理.   
                showOptionValue(option)   
  
            }, 60);   
    }   
}   
  
function showOptionValue(opt,msg){   
    var now=new Date();   
    var dt= (now.getYear())+'-'+(now.getMonth()+1)+'-'+now.getDate()+   
            ' '+now.getHours()+':'+now.getHours()+':'+now.getSeconds()+'.'+now.getMilliseconds();   
    var resultZone=document.getElementById('reslut');   
    resultZone.style.margin="10px";   
    resultZone.innerHTML=dt +" 时,点击了: " + (opt.text + ' = '+opt.value);   
}   
  
</script>  
 </head>  
  
 <body>  
  
  <select  onclick="simOptionClick4IE()" >    
    <!-- 下面的 onclick="showOptionValue( this )" 是为 ff 和 opera而准备 -->  
    <option value="1" onclick="showOptionValue( this )" >aaaaa</option>  
    <option value="2" onclick="showOptionValue( this )" >bbbbb</option>  
    <option value="3" onclick="showOptionValue( this )" >ccccc</option>  
  </select>  
  
<div id="reslut" ></div>  
</body>  
</html>  

你可能感兴趣的:(html,IE,Opera)