以下脚本在IE6、IE7、IE8 Beta2、Firefox 3、Chrome等浏览器中测试通过。
// This function is used for firing the event in IE & Nescape.
function FireEvent(controlID, eventName)
{
if (document.all) // For IE.
{
eval("document.getElementById(\"" + controlID + "\")." + eventName + "();");
}
else // For Nescape
{
var e = document.createEvent('HTMLEvents');
e.initEvent(eventName, false, false);
document.getElementById(controlID).dispatchEvent(e);
}
}
HTML测试脚本:
<!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 type="text/javascript">
function DoClick()
{
FireEvent("button2", "click");
}
function Display(control)
{
alert(control.value);
}
function FireEvent(controlID, eventName)
{
if (document.all) // For IE.
{
eval("document.getElementById(\"" + controlID + "\")." + eventName + "();");
}
else // For Nescape
{
var e = document.createEvent('HTMLEvents');
e.initEvent(eventName, false, false);
document.getElementById(controlID).dispatchEvent(e);
}
}
</script>
</HEAD>
<BODY>
<input id="button1" type="button" value="I'm Button1." onclick="DoClick();" />
<input id="button2" type="button" value="I'm Button2." onclick="Display(this);" />
</BODY>
</HTML>
分享到:
相关推荐
- IE中的`event`对象提供了`x`和`y`属性来获取鼠标位置,而Firefox中没有。可以使用`event.clientX`和`event.clientY`作为替代,它们在大部分情况下等效。如果需要精确的坐标,可能需要计算`event.pageX`和`event....
在IE中,window.event可以正确执行,但是在Firefox中却不可以。解决方法是将window.event改为事件对象evt,例如: 原代码:提交" onclick="javascript:gotoSubmit()"/> function gotoSubmit() { ... alert...
### event兼容调用详解——IE,Firefox,Chrome 在跨浏览器开发中,处理事件(event)的兼容性问题是一项常见的挑战。不同的浏览器对事件模型的支持程度不同,这导致了开发者在编写JavaScript代码时需要考虑多种...
自己写的弹出窗口 IE&Firefox openWin("id","标题","http://www.csdn.net",400,300,event)
标题与描述均聚焦于“JavaScript在IE和Firefox(火狐)的不兼容问题解决”,这表明文章旨在探讨并提供解决方案来处理在不同浏览器环境下的JavaScript兼容性问题,尤其是在Internet Explorer(IE)和Mozilla Firefox...
- 解决方法:在Firefox中,可以使用`event.pageX`替代`event.x`,但在IE中不支持。使用`event.clientX`作为通用解决方案,它在两者中都可用。如果需要精确的坐标,可以处理`event.clientX`和`event.pageY`的差异。 ...
### Javascript的IE与Firefox(火狐)兼容性解决方案 在Web开发过程中,浏览器兼容性问题一直是开发者们关注的重点之一。由于不同的浏览器对于Web标准的支持程度存在差异,这导致了同样的代码在不同浏览器中的表现...
需要注意的是,`fireEvent`是IE特有的,其他浏览器(如Firefox、Chrome、Safari、Opera等)并不支持。在跨浏览器的JavaScript开发中,通常会使用`dispatchEvent`方法来代替,它在标准浏览器中提供了类似的功能。然而...
### JavaScript在Internet Explorer (IE) 和 Firefox 中的区别与解决方案 #### 一、获取HTML元素的方式差异 1. **通过ID获取元素**: - **IE**:支持`document.getElementById`和`document.all`两种方式。 - ...
Firefox 不支持 click 方法的解决 Firefox 不支持 click 方法是因为 W3C 标准规定 click 方法只能赋予 input 元素。这意味着在 Firefox 浏览器中,不能使用 click 方法来触发非 input 元素的点击事件。 解决方法是...
IE中,`window.event`对象用于访问当前事件的相关信息,但在Firefox中,事件信息是通过事件处理函数的参数传递的。要兼容两者,可以在事件处理函数中检查`event`参数,如果没有,则从`window`对象中获取: ```...
firefox火狐浏览器如下调用 代码如下: <body onclick=”a(event)”> 这样就可以调用成功 这种方法在firefox需要带个参数过去,不是太好,下面介绍第二种方法 第二种方法: 代码如下: function a(){ e=...
window.event只能在IE下运行,而不能在Firefox下运行,这是因为Firefox的event只能在事件发生的现场使用。Firefox必须从源处加入event作参数传递。IE忽略该参数,用window.event来读取该event。解决方法是if(typeof...
兼容IE和FireFox的event(事件)的对象获得,直接下载引用即可
- IE中,通过事件对象的`event.clientX`和`event.clientY`获取鼠标坐标,Firefox则需要传递事件对象给函数,然后通过`ev.pageX`和`ev.pageY`获取。 7. 元素边界问题: - IE计算宽度和高度时包括边框,而Firefox不...
另外,`event.layerX`属性在IE和Firefox中都有,但在具体的意义上可能存在差异,需要进一步测试确认。 #### 4. HTML对象的ID作为对象名的问题 在IE中,可以直接通过HTML对象的ID作为`document`的下属对象变量名来...
Firefox(火狐浏览器)和IE(Internet Explorer)的内核不同,导致它们对JavaScript的某些API支持不同。Firefox基于Gecko引擎,而IE则使用Trident引擎。在早期版本的IE中,由于安全原因,JavaScript直接操作剪贴板的...
在获取鼠标当前位置方面,IE浏览器使用`event.x`和`event.y`,而Firefox则使用`event.pageX`和`event.pageY`。为了确保兼容性,开发者通常会使用`event.clientX`和`event.clientY`,这两个属性在IE和Firefox中都可用...