更新的代码:
function getElements() { var x=document.getElementsByTagName("option"); var el = document.getElementById('selectDept'); el.onmouSEOver = function( myevent ) { // event = event || window.event.srcElement; if(myevent && myevent.target){ if ( myevent.target.tagName.toLowerCase() == 'option' ) { alert(myevent.target.innerHTML); } } else if(window.event) { if ( window.event.srcElement.tagName.toLowerCase() != 'select' ) { alert('s'); } } };
但仍然无法在IE中工作.
解决方法
你还不能在整个select上设置一个mouSEOver事件处理程序,如果target是一个选项元素,则定位event属性,执行X动作吗?
var el = document.getElementById('foo') el.onmouSEOver = function( event ) { event = event || window.event; var target = event.target ? event.target : event.srcElement; if ( target.nodeName.toLowerCase() === 'option' ) { alert('option'); } }
更新的代码: