1.fireEvent()是强迫触发某个事件。
如:<form onsubmit="a()">。。。
中,如果button的form.submit()的方式提交表单,是不会主动触发onsumbit事件的,如果必须的话,就要在submit前fireEvent("onsubmit")下,这样就会触发该事件了。
attachEvent()是绑定函数到某个事件上(detachEvent是卸载)。
如:<button id=btn>
<script>
var f =new Function("event","alert('i am attached function')");
btn.attachEvent("onclick",f);
</script>
下面为fireFox中方法,firefox不支持fireEvent
if( document.all )
{
t.fireEvent( "onchange" );
}
else
{
var evt = document.createEvent('HTMLEvents');
evt.initEvent('change',true,true);
t.dispatchEvent(evt);
}
页面中不能同时出现window.onload=...和<body onload="...">
解决办法就是用attachEvent给onload添加所需运行的函数
if (document.all){
window.attachEvent('onload',FuncName)
}
else{
window.addEventListener('load',FuncName,false);
}[最后编
实例区别:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
function a()
{
var newEvt = document.createEventObject()
newEvt.button = 3
document.all.aa.fireEvent("onkeydown", newEvt)
//document.all.aa.click()
}
function b()
{
document.all.bb.onkeypress=c
}
function c()
{
alert()
}
//-->
</SCRIPT>
</HEAD>
<BODY onload="a();b()">
<INPUT TYPE="text" id="aa" onkeydown="alert()">
<INPUT TYPE="text" id="bb"><br>
</BODY>
</HTML>
分享到:
相关推荐
IE浏览器中的`fireEvent`方法是一种触发事件的方式,它与`onclick`等事件处理函数有所不同。`fireEvent`方法主要用于模拟用户行为,例如点击、提交表单等,它可以在元素上触发指定的事件,即使该元素没有预先定义...
与标准的事件处理方式不同,`fireEvent`在某些情况下能触发事件冒泡,即使目标元素没有直接绑定对应的事件处理函数。 在JavaScript中,我们通常使用`addEventListener`或`attachEvent`(IE兼容性处理)来为元素添加...
IE使用`element.attachEvent("onclick", func)`,而Firefox使用`element.addEventListener("click", func, true)`。在IE中,可以多次附加同一个事件的处理函数,它们都会被执行;Firefox的`addEventListener`则允许...
然而,`attachEvent`并不被其他浏览器如Chrome或Firefox支持。它们使用标准的`addEventListener`方法来添加事件监听器: ```javascript self.addEventListener("blur", function() { dd.style.display = "none"; }...
### JavaScript中的事件处理:attachEvent与addEventListener #### 一、引言 JavaScript 是一种广泛使用的脚本语言,它被用于实现网页的动态效果和交互功能。随着 Web 技术的发展,浏览器之间的差异也逐渐显现出来...
"同时兼容IE和FireFox的事件处理event代码--添加文件上传例子"这个主题聚焦于解决浏览器之间的差异,尤其是针对老版本的Internet Explorer(IE)和Firefox。在这些早期浏览器中,事件处理的实现方式有所不同,导致...
首先,attachEvent 方法是早期 Internet Explorer 浏览器引入的事件监听方法,它的语法是:`object.attachEvent(event, function)`。这个方法接受两个参数,第一个参数是事件名称(如 "onclick"),第二个参数是要...
parentButton.fireEvent('onclick'); } else if (parentButton.dispatchEvent) { // Firefox, Chrome, etc. var clickEvent = new MouseEvent('click', { bubbles: true, cancelable: true, view: window }); ...
2. **`attachEvent`**: 与`addEventListener`不同,`attachEvent`在IE中执行事件处理函数时,`this`会指向绑定事件的元素,通常是全局对象`window`。当点击`test1`时,所有浏览器的行为一致,因为`onclick`属性直接...
本文主要讨论的是Event对象在Internet Explorer(IE)与Firefox浏览器中的差异,这对于优化跨浏览器的JavaScript代码至关重要。 首先,IE浏览器有一个全局的`window.event`对象,无论事件发生在哪里,都可以通过它...
对于现代浏览器,如Chrome、Firefox等,使用`addEventListener`方法时,可以通过`bind`方法轻松地改变函数内部的`this`指向。但IE8及以下版本浏览器不支持`addEventListener`,只能使用`attachEvent`,这就导致了`...
ele.attachEvent('on' + event_name, fun); // IE浏览器 } else { event_name = event_name.replace(/^on/, ""); // 如果on开头,删除on ele.addEventListener(event_name, fun, false); // 非IE浏览器 } } ```...
1,dispatchEvent()这是标准的触发事件方法,使用时需要先创建好事件对象。如下 代码如下: var evt = document.... 注意:与attachEvent一样它需要加上“on” 一个兼容性所有浏览器的版本,如下 代码如下: var d
### 兼容IE与Firefox:JS代码详解 在Web开发过程中,确保JavaScript代码能够在不同的浏览器上正常运行是一项挑战性任务。特别是在早期版本的Internet Explorer(IE)与Firefox之间实现兼容性,更是如此。本文将详细...
与`attachEvent`不同,`addEventListener`添加的事件处理函数会按照添加的顺序执行,即`click1 -> click2 -> click3`。 为了实现跨浏览器的事件绑定,我们需要同时使用`attachEvent`和`addEventListener`。一种常见...
在所有事件处理函数中,都需要确保事件对象与IE和Firefox的兼容: ```javascript var dragElement = document.getElementById('draggable'); var startX, startY; function handleMouseDown(event) { event....
在这段代码中,`attachEvent`方法用于在指定元素上绑定事件处理函数,`createEventObject`用于创建一个事件对象实例,然后`fireEvent`方法触发指定的事件。 而对于现代浏览器,如Chrome和Firefox,它们使用`...
手动触发事件则涉及到`fireEvent`(IE特有)和`dispatchEvent`(W3C标准)两个方法。 1. **IE的`fireEvent`方法**: 在IE11、10、9中,你可以使用`fireEvent`方法来触发一个事件。例如,如果你想在某个元素上触发`...