问题:由于在页面上的按钮太多了,设计上又不能改,只能通过变通的方式修改一下页面,省得难看!
使用内置对象:navigator.userAgent.toLowerCase()分别对IE和FF进行调用
FF:mozilla/5.0 (windows; u; windows nt 5.1; zh-cn; rv:1.9.0.1) gecko/2008070208 firefox/3.0.1(firefox是3.0.1的版本)
IE:mozilla/4.0 (compatible;
msie 6.0; windows nt 5.1; sv1; mozilla/4.0 (compatible; msie 6.0; windows nt 5.1; sv1) ; .net clr 2.0.50727)(我用的IE的版本是6.0的)
这样我们可以通过var isIE = (uagent.indexOf("msie")!=-1 &&
document.all);方式来判断客户端浏览器类型了。网上查资料的时候看到这样的判断方式: var isIE = document.all&&window.print;均可判断!
知道了用户的浏览器类型之后就可以根据浏览器对Event对象的支持来编程,具体的版本支持参看:
W3school
通过Event对象,我们可以知道事件触发的event.screenY/screenX/clientX/clientY/offsetX/offsetY/x/y/srcElement.tagName根据得到的srcElement我们可以操作其属性值
Event里的一些属性说明:(把一些常用的摘下来,以后备用)
1.type:事件的类型,就是HTML标签属性中,没有“on”前缀之后的字符串,例如“Click”就代表单击事件。
2.srcElement:事件源,就是发生事件的元素。比如<a ></a> a这个链接是事件发生的源头,也就是该事件的srcElement。(非IE中用target)
3.button:声明了被按下的鼠标键,是一个整数。0代表没有按键,1代表鼠标左键,2代表鼠标右键,4代表鼠标的中间键,如果按下了多个鼠标键,就把这些值加在一起,所以3就代表左右键同时按下。
4.clientX/clientY:是指事件发生的时候,鼠标的横、纵坐标,返回的是整数,它们的值是相对于包容窗口的左上角生成的。
5.offsetX/offsetY:鼠标指针相对于源元素的位置,可以确定单击Image对象的哪个象素。
6.altKey,ctrlKey,shiftKey:顾名思义,这些属性是指鼠标事件发生的时候,是否同时按住了Alt、Ctrl或者Shift键,返回的是一个布尔值。
7.keyCode:返回keydown和keyup事件发生的时候,按键的代码以及keypress事件的Unicode字符。比如event.keyCode=13代表按下了回车键;
8.fromElement、toElement前者是指代mouseover事件移动过的文档元素,后者指代mouseout事件中鼠标移动到的文档元素。
9.cancelBubble:一个布尔属性,把它设置为true的时候,将停止事件进一步起泡到包容层次的元素,它用于检测是否接受上层元素的事件的控制。true代表不被上层元素的事件控制,false代表允许被上层元素的事件控制。
10.returnValue:一个布尔值属性,设置为false的时候可以阻止浏览器执行默认的事件动作,相当于<a href=”#” onclick=”ProcessMethod();return false;” />。
11.attachEvent()和detachEvent()方法:为制定DOM对象事件类型注册多个事件处理函数的方法,它们有两个参数,第一个是事件类型,第二个是事件处理函数。在attachEvent()事件执行的时候,this关键字指向的是window对象,而不是发生事件的那个元素。
分享到:
相关推荐
使用JavaScript事件综合查询,js事件大全
1.实现JavaScript事件注册;...2.实现JavaScript事件处理函数; 3.实现JavaScript鼠标和键盘事件; 4.实现JavaScript表单相关事件; 5.实现JavaScript字幕滚动事件; 6.实现JavaScript编辑事件;
javascript事件冒泡,事件捕获和事件委托详解 1、事件冒泡:在javascript事件传播过程中,当事件在一个元素上出发之后,事件会逐级传播给先辈元素,直到document为止,有的浏览器可能到window为止。并不是所有的...
JavaScript事件派发器,对单页交互应用中组件通信十分有用。个人原创,发现bug可向我github中提issue~
Js事件大全
第3章+JavaScript事件处理.pdf
Js事件大全 1.一般事件... 2 2.页面相关事件... 2 3.表单相关事件... 3 4.滚动字幕事件... 3 5.编辑事件... 3 6.数据绑定... 4
asp.net中TextBox获得焦点和失去焦点——客户端JavaScript事件 自己亲手做的 ,虽然很简单,但是很实用
[js]javascript事件集合(包有触发事件)终版.pdf
JavaScript事件学习小结(五)js中事件类型之鼠标事件 //www.jb51.net/article/86259.htm JavaScript事件学习小结(一)事件流 //www.jb51.net/article/86261.htm javaScript事件学习小结(四)event的公共成员...
JavaScript事件学习小结(五)js中事件类型之鼠标事件 //www.jb51.net/article/86259.htm JavaScript事件学习小结(一)事件流 //www.jb51.net/article/86261.htm javaScript事件学习小结(四)event的公共成员...
全面,直观javascript的事件
如何给javascript js事件传递参数.zip
javascript的事件大全,很详细的介绍
系统介绍了javascript事件,包括平常理解不透彻的捕获,冒泡等机制,值得一看
JavaScript事件学习小结(五)js中事件类型之鼠标事件 //www.jb51.net/article/86259.htm JavaScript事件学习小结(一)事件流 //www.jb51.net/article/86261.htm javaScript事件学习小结(四)event的公共成员...
js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全js事件大全
eventdispatcher.js, 自定义对象的JavaScript事件 eventdispatcher.js 自定义对象的JavaScript事件用法[removed][removed][removed]
[js]javascript事件集合(包有触发事件).pdf
[js]javascript事件集合(包有触发事件)[参考].pdf