JavaScript 中的window.event代表的是事件的状态,但是我有一个疑问。。。

作者&投稿:柯很 (若有异议请与网页底部的电邮联系)
大虾,帮我下哦 javascript 中的 e和 window.event 分别指什么》~

e 是参数。
window.event代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等。
event对象只在事件发生的过程中才有效。
event的某些属性只对特定的事件有意义。比如,fromElement 和 toElement 属性只对 onmouseover 和 onmouseout 事件有意义。

例子下面的例子检查鼠标是否在链接上单击,并且,如果shift键被按下,就取消链接的跳转。


Cancels Links

function cancelLink() {
if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
window.event.returnValue = false;
}

下面的例子在状态栏上显示鼠标的当前位置。
属性:
altKey, button, cancelBubble, clientX, clientY, ctrlKey, fromElement, keyCode, offsetX, offsetY, propertyName, returnValue, screenX, screenY, shiftKey, srcElement, srcFilter, toElement, type, x, y
1.altKey
描述:
检查alt键的状态。
语法:
event.altKey
可能的值:
当alt键按下时,值为 TRUE ,否则为 FALSE 。只读。
2.button
描述:
检查按下的鼠标键。
语法:
event.button
可能的值:
0 没按键
1 按左键
2 按右键
3 按左右键
4 按中间键
5 按左键和中间键
6 按右键和中间键
7 按所有的键
这个属性仅用于onmousedown, onmouseup, 和 onmousemove 事件。对其他事件,不管鼠标状态如何,都返回 0(比如onclick)。
3.cancelBubble
描述:
检测是否接受上层元素的事件的控制。
语法:
event.cancelBubble[ = cancelBubble]
可能的值:
这是一个可读写的布尔值:
TRUE 不被上层原素的事件控制。
FALSE 允许被上层元素的事件控制。这是默认值。
例子:
下面的代码片断演示了当在图片上点击(onclick)时,如果同时shift键也被按下,就取消上层元素(body)上的事件onclick所引发的showSrc()函数。

function checkCancel() {
if (window.event.shiftKey)
window.event.cancelBubble = true;
}
function showSrc() {
if (window.event.srcElement.tagName == "IMG")
alert(window.event.srcElement.src);
}


4.clientX
描述:
返回鼠标在窗口客户区域中的X坐标。
语法:
event.clientX
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。
5.clientY
描述:
返回鼠标在窗口客户区域中的Y坐标。
语法:
event.clientY
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。
6.ctrlKey
描述:
检查ctrl键的状态。
语法:
event.ctrlKey
可能的值:
当ctrl键按下时,值为 TRUE ,否则为 FALSE 。只读。
7.fromElement
描述:
检测 onmouseover 和 onmouseout 事件发生时,鼠标所离开的元素。 参考:18.toElement
语法:
event.fromElement
注释:
这是个只读属性。
8.keyCode
描述:
检测键盘事件相对应的内码。
这个属性用于 onkeydown, onkeyup, 和 onkeypress 事件。
语法:
event.keyCode[ = keyCode]
可能的值:
这是个可读写的值,可以是任何一个Unicode键盘内码。如果没有引发键盘事件,则该值为 0 。
9.offsetX
描述:
检查相对于触发事件的对象,鼠标位置的水平坐标
语法:
event.offsetX
10.offsetY
描述:
检查相对于触发事件的对象,鼠标位置的垂直坐标
语法:
event.offsetY
11.propertyName
描述:
设置或返回元素的变化了的属性的名称。
语法:
event.propertyName [ = sProperty ]
可能的值:
sProperty 是一个字符串,指定或返回触发事件的元素在事件中变化了的属性的名称。
这个属性是可读写的。无默认值。
注释:
你可以通过使用 onpropertychange 事件,得到 propertyName 的值。
例子:
下面的例子通过使用 onpropertychange 事件,弹出一个对话框,显示 propertyName 的值。


function changeProp()
{
btnProp.value = "This is the new VALUE";
}

function changeCSSProp()
{
btnStyleProp.style.backgroundColor = "aqua";
}



The event object property propertyName is
used here to return which property has been
altered.

<INPUT TYPE=button ID=btnProp onclick="changeProp()"
VALUE="Click to change the VALUE property of this button"
onpropertychange='alert(event.propertyName+" property has changed value")'>
<INPUT TYPE=button ID=btnStyleProp
onclick="changeCSSProp()"
VALUE="Click to change the CSS backgroundColor property of this button"
onpropertychange='alert(event.propertyName+" property has changed value")'>
12.returnValue
描述:
设置或检查从事件中返回的值
语法:
event.returnValue[ = Boolean]
可能的值:
true 事件中的值被返回
false 源对象上事件的默认操作被取消
例子见本文的开头。
13.screenX
描述:
检测鼠标相对于用户屏幕的水平位置
语法:
event.screenX
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。
14.screenY
描述:
检测鼠标相对于用户屏幕的垂直位置
语法:
event.screenY
注释:
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。
15.shiftKey
描述:
检查shift键的状态。
语法:
event.shiftKey
可能的值:
当shift键按下时,值为 TRUE ,否则为 FALSE 。只读。
16.srcElement
描述:
返回触发事件的元素。只读。例子见本文开头。
语法:
event.srcElement
17.srcFilter
描述:
返回触发 onfilterchange 事件的滤镜。只读。
语法:
event.srcFilter
18.toElement
描述:
检测 onmouseover 和 onmouseout 事件发生时,鼠标所进入的元素。 参考:7.fromElement
语法:
event.toElement
注释:
这是个只读属性。
例子:下面的代码演示了当鼠标移到按钮上时,弹出一个对话框,显示“mouse arrived”

function testMouse(oObject) {
if(oObject.contains(event.toElement)) {
alert("mouse arrived");
}
}

:
Mouse Over This.19.type
描述:
返回事件名。
语法:
event.type
注释:
返回没有“on”作为前缀的事件名,比如,onclick事件返回的type是click
只读。
20. x
描述:
返回鼠标相对于css属性中有position属性的上级元素的x轴坐标。如果没有css属性中有position属性的上级元素,默认以BODY元素作为参考对象。
语法:
event.x
注释:
如果事件触发后,鼠标移出窗口外,则返回的值为 -1
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。
21. y
描述:
返回鼠标相对于css属性中有position属性的上级元素的y轴坐标。如果没有css属性中有position属性的上级元素,默认以BODY元素作为参考对象。
语法:
event.y
注释:
如果事件触发后,鼠标移出窗口外,则返回的值为 -1
这是个只读属性。这意味着,你只能通过它来得到鼠标的当前位置,却不能用它来更改鼠标的位置。

1、this 表示这个 元素,等同于document.getElementById;
2、a)你的理解是正确的,但是不仅只有undifined会被强制转换。
js的弱类型,让他可以申明后赋任何类型的值。
因此除了bool型的false,number类型的0,String类型的空串,还有null在三元运算符或者判断条件时都会被转成false
其他还有一些,可以看一看比较基础的javascript书和《javascript高级程序设计》,可谓一阅扫百惑,比在网上别人一知半解的讲述了解的更彻底。
b)通过上面的解答,应该知道为什么不能用event代替this了吧
c)js对于函数的定义是非常松,即使你在函数定义时未写任何参数,或者你定义的参数有多个,但是你调用时,一个参数也不填,也不会出错的。
js函数内默认有个变量,保存你的入参叫:arguments
他是一个数组,下标从0开始,
所以获取event可以写成
function Test(){var event = window.event||arguments[0];}在ie下,事件对象是在全局的,也就 window下,做为window的一个属性
在其他浏览器,都做为方法的第一个参数传入,所以这样写是为了兼容

要获取这个button的值,可以先获取这个对象,event既然是事件,肯定是某对象触发的
所以有这要一个方法
ie下是event.srcElement
其他浏览器是event.target
所以获取这个对象和获取事件对象的值可以这样写
function Test(){var event = window.event||arguments[0],//target 就是这个对象target = event.srcElement||event.target,//这个对象的值targetValue = target.value;}

一、window.event代表着事件对象的状态。只有在事件发生时生效。如鼠标、键盘等事件被触发时这个对象才存在。window.event这只在IE下是这样的。他并不是标准。。也就是说其他浏览器并不支持。在W3C标准支持的浏览器下事件对向是引发事件涵数的第一个参数,参数名随意。

二、javascript函数(方法)d()
参数为e||window.event  表示e或window.event  这句话是跨浏览器的写法  支持这两种方式的 浏览器才能进入该方法,IE中该对象为window.event(window可省略)  而Firefox中该对象为e  ,至于该对象是什么:该对象代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等  例如:获取光标位置 event.clientX event.clientY

拓展资料

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。 

为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。

(参考资料 百度百科 JavaScript)



在IE下是这样
但在FIREFOX下不一样,在firefox中event 是事件回调函数的第一个参数,事件不发生时是不存在event对象的

无论是在IE还是在firefox下, 应在在事件回调函数里使用event对象

javascript函数(方法)d()
参数为e||window.event 表示e或window.event 这句话是跨浏览器的写法 支持这两种方式的 浏览器才能进入该方法
IE中该对象为window.event(window可省略) 而Firefox中该对象为e
至于该对象是什么:
该对象代表事件的状态,例如触发event对象的元素、鼠标的位置及状态、按下的键等等 例如:获取光标位置 event.clientX event.clientY


首先回答你第一个问题:window.event代表着事件对象的状态。只有在事件发生时生效。如鼠标、键盘等事件被触发时这个对象才存在。window.event这只在IE下是这样的。他并不是标准。。也就是说其他浏览器并不支持。在W3C标准支持的浏览器下事件对向是引发事件涵数的第一个参数,参数名随意,在下面的例子中我的事件对象的参数名是evt,也可以定义为其他名字.为了兼容IE浏览器可以这样写
<style type="text/css">
#obj{background:red;width:300px;height:200px;position:relative;}
</style>
<div id="obj"></div>
<script type="text/javascript">
document.getElementById("obj").onclick=function(evt){
//获取的这个ID为obj的DIV对象就是个实例引起鼠标事件的元素
//evt代表事件对象(W3C DOM标准下)
var evt=evt || event; //标准化事件对象(W3C DOM 和IE DOM )
evt.Target=evt.Target || evt.srcElement;//标准化事件对象属性<引起事件的元素>
//(W3C DOM 和IE DOM )
evt.layerX=evt.layerX || evt.offsetX;//鼠标相对于引起事件的元素的父元素的X坐标(标准化IE)
evt.layerY=evt.layerY || evt.offsetY;//鼠标相对于引起事件的元素的父元素的Y坐标(标准化IE)
alert("相对这个DIV的X方向的坐标"+evt.layerX+"\n相对这个DIV的Y方向的坐标"+evt.layerY)
}
</script>
//以上都是手打的。望采纳。可直接保存代码部分复制到页面的body部分。在IE和FF下都可以正常执行。

不一定


javascript有哪些特点
JavaScript的特点:1. 动态性和解释性 JavaScript是一种动态类型的脚本语言,不需要预先编译。这意味着在浏览器环境中,JavaScript代码一边被解析一边执行,减少了用户等待时间,提升了交互体验。动态性也使得JavaScript在运行时可以进行类型检查和灵活的数据操作。2. 面向对象和函数式编程支持 JavaScript支持面向...

JavaScript 执行上下文
全局执行上下文是程序开始时创建的第一个执行上下文,代表全局作用域,其中的变量是全局变量,this 的值为 window 对象。函数执行上下文在调用函数时创建,代表函数的作用域,this 的值取决于函数调用方式。Eval 函数执行上下文是特殊类型,用于执行字符串中的 JavaScript 代码。JavaScript 通过执行栈(Execution...

JS全称是什么
js 的全称是javascript ,JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

javascript中的“ javascript:;”
JavaScript中的"javascript:;"是一种特殊的URL格式,用于在网站中使用JavaScript来执行特定的任务或操作。点击学习大厂名师精品课以下是一些解决方法,可以有效解决“javascript:;”带来的问题:1、使用未定义的JavaScript函数:可以将“javascript:;”替换为一个未定义的函数名称,例如“javascript:void(0);”...

javascript什么意思
JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。除了HTML和CSS,JavaScript是万维网的核心技术之一。JavaScript支持交互式web页面,是web应用程序的重要组成部分。绝大多数网站都使用它,主要的网络浏览器都有专门的JavaScript引擎来执行它。javascript的特点 1、脚本语言。

javascript什么意思
JavaScript的意思 JavaScript是一种编程语言,主要用于网页和网站的开发。它是一种脚本语言,可以在浏览器中运行,为网页增加交互性和动态功能。下面详细介绍JavaScript的相关内容。一、JavaScript的基本定义 JavaScript是一种动态类型的脚本语言,主要用于增强网页的交互性。它最初由Netscape公司的Brendan Eich设计...

什么是javascript
JavaScript是一种脚本语言,主要用于网页的交互性和动态性。以下是关于JavaScript的详细解释:一、基本定义 JavaScript是一种解释型语言,通常嵌入在HTML中,用于增强网页的交互性和功能。它能够处理用户与网站的交互,例如响应用户的点击事件、表单提交等。此外,JavaScript还可以用于创建动态页面内容、处理数据、...

javascript是什么
JavaScript是一种编程语言。JavaScript是一种广泛用于网页开发的脚本语言,也是一种功能强大的编程语言。它主要用于网页的交互性设计和动态内容的更新。下面详细解释JavaScript的特点和用途。一、JavaScript的基本定义 JavaScript是一种解释型语言,最初由Netscape公司的Brendan Eich设计,其最初目的是为网页提供动态...

javascriptjavascript成熟的几个方面
JavaScript是一种成熟的编程语言,广泛用于前端和后端开发。以下是JavaScript成熟的几个方面:1. 广泛使用:JavaScript是Web开发中最常用的编程语言之一。几乎每个现代网页都使用JavaScript来实现交互和动态效果。2. 大量的工具和框架支持:JavaScript拥有丰富的工具和框架生态系统,使开发人员能够更高效地构建复杂...

javascript是什么意思
JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言。Javascript脚本语言同其他语言一样,有它自身的基本数据类型,表达式和算术运算符及程序的基本程序框架。Javascript提供了四种基本的数据类型和两种特殊数据类型用来处理数据和文字。而变量提供存放信息的地方,表达式则可以完成较复杂的信息处理。JavaScr...

天元区19227298969: javascript 中windows对象怎么用 -
中叔傅养血: 确定

天元区19227298969: javascript中window.opera和window.innerWidth 分别表示的是什么?有什么涵义 -
中叔傅养血: window.opera就是调用opera浏览器函数! 例如:window.opera.version()就是查看opera浏览器版本 window.innerWidth是查看客户机浏览器的有效可视宽度! 但是IE不能用,得用document.documentElement.clientWidth —————————————————————————— 如果能够帮助你解决问题,那么希望你点击“采纳”, 举手之劳,将鼓励我们继续解答其他QQ网友的问题,谢谢!

天元区19227298969: (function (wind){}(window));这种js写法是什么意思? -
中叔傅养血: 是这样的吧.<br>(function (wind){})(window);<br>function (wind){}是一个匿名函数,然后(window)是给这个匿名函数传递的参数;<br><br>这样在函数里面所有的window都可以用wind来代替<br><br>(function(wind){<br> alert(wind)<br><br>})(window)<br><br>可以参考:http://www.cnblogs.com/ada-zheng/p/4174159.html

天元区19227298969: javascript遍历点击事件 -
中叔傅养血: //这是遍历绑定点击事件 var aList = document.getElementsByTagName('a'), aList_len = aList.length; for(var i = 0;iaList[i].onclick = function () { alert(this.textContent); } }//这是遍历元素被点击 window.onload = function () { var aList = document.getElementsByTagName('a'), aList_len = aList.length; for(var i = 0;iaList[i].click(); } }

天元区19227298969: JS 关闭新窗口
中叔傅养血:win = window.open(' http://www.baidu.com','','');//打开新窗口 win.close();//关闭新打开的窗口

天元区19227298969: 怎样将JS调用的页面居中? -
中叔傅养血: 页面不居中把页面放在一个容器里让容器居中嘛!

天元区19227298969: JavaScript中提示是 else alert("用户名或者密码错误,请验证!");有错误? -
中叔傅养血: else if(text2.value=="781625");{这里多了一个分号.改成:else if(text2.value=="781625"){请采纳,请给分.

天元区19227298969: javascript:如何获得变量的名,或获得叫某字符串的变量
中叔傅养血: 1.js没提供这个方法,而且对象也没这个属性. 2.alert(window["Example"]).js要运行,需要一个运行空间,这个空间可以理解为window,可以理解为一个对象,所有定义的变量和方法都是这个对象的属性.要获取对象的属性,如果知道属性...

天元区19227298969: js中的window.onload链接外部js文件能不能写两次以上?即每一个js文件都用一下window.onload -
中叔傅养血: onload只能有一个,解决方案你可以写到一个onload里 或者 ie下用window.attachEvent("onload", 你的onload方法) 非ie下用window.addEventListener("load", 你的onload方法) 这样添加onload事件

天元区19227298969: 如何判断Javascript脚本向服务器产生了请求? -
中叔傅养血: 首先,考虑第一个问题 什么样的javascript脚本会向服务器产生请求?1 现有HTML中元素的属性改变引起的服务器请求 如IMG的src、IFrame的src、link元素的href、 script元素的src等2 现有HTML创建了新元素,跟1类似3 form提交4 ajax请求5 window方法,如refresh以及location的改变等 无论采用何种方法,都需要一个前提,那就是服务器的服务地址,所以判断那些会产生请求,很简单啊,看看是否请求了服务器服务的地址啊

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网