更多的文章可以参考 http://www.gxlcms.com/tag/event/1.htm另外ie中使用srcElement去获得事件触发源,ff下使用target。因此使用这两个对象时需要做相关的浏览器兼容。 srcElement --http://www.gxlcms.com/ 点击 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 查看运行结果 综合上节attachEvent与addEventListener。 代码如下: function Click(event){ event = event? event: window.event; var obj = event.srcElement ? eve...
另外ie中使用srcElement去获得事件触发源,ff下使用target。因此使用这两个对象时需要做相关的浏览器兼容。 点击 [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]综合上节attachEvent与addEventListener。点击 添加事件点击[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]下面是关于ie与firefox event的详细区别window.event IE:有window.event对象 FF:没有window.event对象。可以通过给函数的参数传递event对象。如onmousemove...
通常为了兼容IE与FireFox,一般的事件处理方法为: 代码如下: btn.onclick=handle_btn_click; function handle_btn_click(evt){ if(evt==null)evt=window.event;//IE //处理事件. } 对于简单的程序,这不算麻烦. 但对于一些复杂的程序,某写函数根本就不是直接与事件挂钩的.如果要把event传进该参数,那么所有的方法都要把event传来传去..这简直就是噩梦. 下面介绍一个解决这个麻烦事的方法,与原理. JScript中,函数的调用是有一个 fu...
代码如下: 无标题文档 var EventUtil = {}; EventUtil.formatEvent = function(oEvent){ if(window.ActiveXObject){ //W3C event的charCode属性,按下的按键的Unicode值 oEvent.charCode = (oEvent.type == 'keypress') ? oEvent.keyCode : 0; //W3C event的eventPhase属性 //事件的阶段,可能有以下的值中的一个: // 0 - 捕获阶段 // 1 - 在目标上 // 2 - 冒泡阶段 oEvent.eventPhase = 2; //W3C event的isChar属性,表示按下...
1,关于event的用法 存在问题:IE中可以直接使用event对象,但是Mozilla不可以直接使用。 例如: function doIt(){ alert(event); } </ script> 这段代码在Mozilla浏览器中是不能正常工作的,因为Mozilla浏览器中没有默认的event对象,只能在事件发生的现场使用。 下面看一下两者都兼容的代码: IE&Moz <input type="button" value="clickMe" nclick="doIt(event)">function doIt(oEvent){alert(oEvent); } </ script> 2,关于event...
注意获取的标记都以大写表示,如"TD","TR","A"等。所以把看过的一些抄下来,不记得的时候再来看看。 代码如下: function tdclick(){ if(event.srcElement.tagName.toLowerCase()=='td') alert("行:"+(event.srcElement.parentNode.rowIndex+1)+"列:"+(event.srcElement.cellIndex+1)); } event.srcElement从字面上可以看出来有以下关键字:事件,源 他的意思就是:当前事件的源, 我们可以调用他的各种属性 就像:document.get...
因为javascript的事件模型有三种,它们分别是NN4、IE4+和W3C/Safari;这也造成了在不同的浏览器中处理event的差异,这里结合一些零碎的代码来说明如何做到event在IE4+和Firefox下的正常工作。首先看如下代码: 代码如下: function doEventThing(eventTag){ var event = eventTag||window.event; var currentKey = event.charCode||event.keyCode; var eventSource =window.event.srcElement||eventTag.target; } 这段代码主要...
比如得到触发事件的元素引用在IE浏览器下是:event.srcElement,在FF浏览器下则是:event.target,另外又比如在FF浏览器下得到光标相对页面的位置是event.pageX,而IE浏览器下的处理方式又是不一样的,当然还有一些像“阻止事件冒泡”以及“取消浏览器默认行为”等,不同浏览器也有不同的处理方式,如果我们要使JavaScript在不同的浏览器下能正常处理事件代码,就要分别进行判断处理。现在jQuery为我们提供了统一兼容处理函数$.eve...
代码如下: function getEvent() { var i = 0; if(document.all){ return window.event; } func = getEvent.caller; while(func != null) { var arg0 = func.arguments[0]; if(arg0) { if(arg0.constructor == MouseEvent) { return arg0; } } func = func.caller; } return null; } 函数中要引用须传参e才能等到: 代码如下: function buttonOver(e) { e = getEvent(); var obj = e.srcElement || e.target; if (obj.runtimeStyle...
在这里提出的事件,当他们发生在一个确定的HTML元素上的时候,他们的名字能够被大多数的浏览器所识别。也就是说,浏览器会查找你为这个HTML元素所注册的事件处理程序的脚本,而且会被立即执行。 一开始只有为数很少的一些事件。这些事件在几乎所有的JavaScript浏览器都能运行,即使是那些非常古老的。需要注意的是那些早期的事件只能工作在链接或者表单上,有时候也能运行在整个窗口上,但是其他的大多数HTML元素不行。 ...
没有event就没有脚本。可以看看任何有JavaScript代码的网页:几乎所有的例子都有一个事件触发了脚本。原因非常简单。JavaScript就是给你的页面添加内部活动:用户做一些事情然后页面做出回应。 因此JavaScript就需要一个方法能够检测到用户的动作然后才能知道什么时候做出反应。这还需要知道那个函数会被执行,函数会做一些你认为的给你的网页增色的动作。这些文字描述了如何去写这样的脚本。虽然不容易,但是这是一个很让人满足的...
看下面code: 代码如下: TestPage $(document).ready(function() { $("#btn1").unbind('click').removeAttr('onclick').click(function() { alert('The method has invoked by Jquery.'); }); }); function foo() { alert('The method has invoked.'); } 用的就是unbind,然后再removeAttr,最后再加上你的方法。来看下它们API document: unbind([type], [fn]) 概述 bind()的反向操作,从每一个匹配的元素中删除绑定的事件...
IE only的监听代码function document.onkeydown() { str1=String.fromCharCode(event.keyCode); txt.value = str1+"的keycode = "+window.event.keyCode; } [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]Ascii 代码表 Ascii 0 {Nulo, Sem Som} Ascii 1 Ascii 2 Ascii 3 Ascii 4 Ascii 5 Ascii 6 Ascii 7 Ascii 8 {BackSpace} Ascii 9 {Tab} Ascii 10 Ascii 11 Ascii 12 Ascii 13 {Enter} Ascii 14 Ascii 15 Ascii 16 {Shift}...
对于事件的操作无非是addEvent,fireEvent,removeEvent这三个事 件方法。一般lib都会对浏览器的提供的函数做一些扩展,解决兼容性内存泄漏等问题。第三个问题就是如何得到domReady的状态。 6.1 event的包裹 浏览器的事件兼容性是一个令人头疼的问题。IE的event在是在全局的window下, 而mozilla的event是事件源参数传入到回调函数中。还有很多的事件处理方式也一样。 Jquery提供了一个 event的包裹,这个相对于其它的li...
IE与firefox事件处理 在ie中,事件对象是作为一个全局变量来保存和维护的。 所有的浏览器事件,不管是用户触发 的,还是其他事件, 都会更新window.event 对象。 所以在代码中,只要轻松调用 window.event 就可以轻松获取 事件对象, 再 event.srcElement 就可以取得触发事件的元素进行进一步处理 在ff中, 事件对象却不是全局对象,一般情况下,是现场发生,现场使用,ff把事件对象自动传 递给对应的事件处理函数。 在代码中,函数...