我只有在主体加载后eventhandle()产生输出后才触发事件(使输入元​​素聚焦)。注释是事件Firing调用eventhandle时产生的输出。

<input type="text" value="xyz" ></input>
<script>
    eventhandle();
    document.getElementsByTagName("input")[0].onclick=eventhandle
    function eventhandle()
    {
        alert(this.value);//works
        alert(event);    //works
        alert(event.type)//Error for all the properties of event object
    }
</script>


如果在目标上DOM触发事件后调用eventhandle(),则此问题将得到解决。

<input type="text" value="xyz" ></input>
<script>
    document.getElementsByTagName("input")[0].onclick=eventhandle
    function eventhandle()
    {
        alert(this.value);
        alert(event.type); //works for all properties of event object
        alert(event)       //works
    }
    eventhandle();
</script>


我不明白为什么会发生错误以及如何解决

最佳答案

首先,我不知道您为什么这样调用事件句柄,我的意思是eventhandle()?事件句柄不用于直接调用,它将在事件触发后被调用。

其次,出现错误是因为调用eventhandle函数时,页面没有完全加载。您应该先使用window.onload = your_handler

10-08 15:15