发布于 2016-09-15 00:53:51 | 339 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的Javascript教程,程序狗速度看过来!

JavaScript客户端脚本语言

Javascript 是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。


Javascript 模拟点击事件,一般情况下ie支持的,firefox并不支持。所以可以通过下面的方法解决。

一把情况下模拟点击一般两个方面,模拟点击超级连接事件
firefox的兼容的函数为
对HTMLAnchorElement 加入onclick事件


try { 
// create a element so that HTMLAnchorElement is accessible 
document.createElement('a'); 
HTMLElement.prototype.click = function () { 
if (typeof this.onclick == 'function') { 
if (this.onclick({type: 'click'}) && this.href) 
window.open(this.href, this.target? this.target : '_self'); 
} 
else if (this.href) 
window.open(this.href, this.target? this.target : '_self'); 
}; 
} 
catch (e) { 
// alert('click method for HTMLAnchorElement couldn\'t be added'); 
} 

下面是具体的应用

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

如果是普通的html添加点击
这一段使得FireFox的HTMLElement具有click方法(add click method to HTMLElement in Mozilla)

try { 
// create span element so that HTMLElement is accessible 
document.createElement('span'); 
HTMLElement.prototype.click = function () { 
if (typeof this.onclick == 'function') 
this.onclick({type: 'click'}); 
}; 
} 
catch (e) { 
// alert('click method for HTMLElement couldn\'t be added'); 
} 

下面是网友的其它相关文章也可以参考下。
最近做东西发现用户在网页输入框里面按回车的行为是不固定的。。。
特别是在网页有多个表单的时候
于是搜了一把找了一个模拟点击的js,经测试能在firefox和ie上运行
 
function doClick(linkId, e){ 
if(e.keyCode != 13){ 
return; 
} 
var fireOnThis = document.getElementById(linkId) 
if (document.createEvent) 
{ 
var evObj = document.createEvent('MouseEvents') 
evObj.initEvent( 'click', true, false ) 
fireOnThis.dispatchEvent(evObj) 
} 
else if (document.createEventObject) 
{ 
fireOnThis.fireEvent('onclick') 
} 
} 

其中e是event,内置对象,linkId是模拟被点击的对象id
比如<INPUT id="test" onkeypress="doClick("buttonId", event)">
这样的话就能让用户按回车来提交表单了~
opera可以再改一下
 
<img id="a" src="/a.jpg" onclick="alert('a');"/><div onclick="clickObj('a')">click me</div> 
<script language="javascript"> 
<!-- 
function clickObj(o){ 
var o = document.getElementById(o); 
if( document.all && typeof( document.all ) == "object" ) //IE 
{ 
o.fireEvent("onclick"); 
} 
else 
{ 
var e = document.createEvent('MouseEvent'); 
e.initEvent('click',false,false); 
o.dispatchEvent(e); 
} 
} 
//--> 
</script> 



最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务