Javascript IE事件

7 javascript events internet-explorer javascript-events

这适用于Firefox,但不适用于IE.任何帮助将非常感激!谢谢!

  var form = document.getElementById('theform')
    /* create the event handler */
    form.gen.onclick = function( evt ) {
        var f = evt.target.form
        var y = f.year.value
        var m = f.month.value
        genCalendar( document, y, m, 'theCalendar' )
    }
Run Code Online (Sandbox Code Playgroud)

Chr*_*oph 15

要在兼容标准的浏览器和IE中获取事件的目标,请使用

var target = evt ? evt.target : window.event.srcElement;
Run Code Online (Sandbox Code Playgroud)

这里有一个事件对象的不同属性概述在MDC.


gnu*_*nud 1

如前所述,IE 不会将事件对象作为参数传递。尝试这个:

var form = document.getElementById('theform')
  /* create the event handler */
  form.gen.onclick = function( evt ) {
    if(!evt)
      evt = window.event;
    var f = evt.target.form
    var y = f.year.value
    var m = f.month.value
    genCalendar( document, y, m, 'theCalendar' )
}
Run Code Online (Sandbox Code Playgroud)

或者更好的是,使用跨浏览器库,例如Prototype.jsjQuery