- 浏览: 592737 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (300)
- Web前端 (27)
- Java疑难 (60)
- 面试 (59)
- 汇编语言 (1)
- 计算机组成原理 (2)
- 操作系统 (3)
- 计算机网络 (6)
- C/C++疑难 (9)
- SSH (2)
- Web开发 (15)
- 故障 (3)
- 软件开发 (16)
- Portal开发 (1)
- 后台开发 (6)
- 数据库 (35)
- 设计模式 (4)
- 数据结构与算法 (4)
- Linux (3)
- 项目管理 (10)
- 多线程 (12)
- 嵌入式 (9)
- 网络编程 (4)
- 架构设计 (20)
- 软件工具技巧 (7)
- 并行并发 (4)
- 窗口编程 (7)
- 串口编程 (0)
- Flex (2)
- 协议 (1)
- 通讯方式 (4)
- 性能分析优化 (5)
- 测试相关 (4)
- 海量数据处理 (2)
- JAVA核心技术 (10)
- SOA (3)
- 攻略规划 (1)
- 爬虫/搜索 (2)
- 正则表达式 (1)
- A Comparison Of NoSQL Database Management Systems And Models (1)
最新评论
-
charles751:
分析的很好!但有一点:只要同步组合操作就可以了,不一定非要sy ...
Vector 是线程安全的? -
S346618898:
core Java中有一段:Vector类对自己的所有可修改方 ...
Vector 是线程安全的? -
code_cj:
基本上明白了.但执行顺是否应该是/etc/profile -& ...
profile bashrc bash_profile之间的区别和联系 -
xd2008ck:
各自有各自的场景吧楼主不要太激进了
Vector 是线程安全的? -
zwt2001267:
写的不错,赞一个
Vector 是线程安全的?
复制代码 代码如下:
<script language="javascript">
//注册回调函数loaded到处理函数window.onload上
window.onload = loaded;
//把方法window.alert地址传递给show函数
var show = window.alert;
function loaded(){
show("success");
}
</script>
2,事件对象
下面的js实现当在textarea文本框里面键入回车时,并不导致换行。即禁用回车键
复制代码 代码如下:
<textarea ></textarea>
<script language = "javascript">
/*
事件的对象的棘手部分在于,IE的实现与W3C的规范有查表。IE使用一个独立的全局事件对象(它可以再全局变量属性window.event中找到),而其他浏览器则使用独立的包含事件对象的参数传递。
*/
document.getElementsByTagName("textarea")[0].onkeypress = function(e)
{
//如果不存在事件对象,则获取全局的(仅IE)的对象
var e = e || window.event;
//如果敲击了回车键,返回false(使它不发生任何行为)
return e.keyCode != 13;
}
</script>
3,this关键字
浏览器会把this关键字等同于引用该函数(含有this关键字的函数)的当前元素
复制代码 代码如下:
<body>
<div id = "body">
<ul class = "links">
<li>
<a href = "/">Home</a>
</li>
<li>
<a href = "./">mappath</a>
</li>
<li>
<a href = "../">parentpath</a>
</li>
</ul>
</div>
</body>
<script language = "javascript">
var li = document.getElementsByTagName("li");
for (var i = 0; i < li.length; i++)
{
li[i].onclick = handeClick;
}
function handeClick()
{
this.style.backgroundColor = "blue";
this.style.color = "red";
}
</script>
4,取消事件冒泡
通常当你对子元素作样式作修改,或者触发事件,根据冒泡原理,其父元素也会作相同改变,为防止这类事情发生,需要做取消事件冒泡的处理。
下面实例展示了鼠标会为其悬停的当前元素加上红色的边框。如果不阻止事件冒泡的话,每次把鼠标移到一个元素上时,该元素及其父元素都会有红色的边框,这是我们不希望看到的。
复制代码 代码如下:
<body>
<div id = "body">
<ul class = "links">
<li>
<a href = "/">Home</a>
</li>
<li>
<a href = "./">mappath</a>
</li>
<li>
<a href = "../">parentpath</a>
</li>
</ul>
</div>
</body>
<script language="javascript">
//阻止冒泡的通用函数
function stopBubble(e)
{
if (e && e.stopPropagation)
//w3c方法
e.stopPropagation();
else
//ie方法
window.event.cancelBubble = true;
}
var li = document.getElementsByTagName("*");
for (var i = 0; i < li.length; i++)
{
//监听用户鼠标,当移动到元素上时,为元素加上红色边框
li[i].onmouseover = function(e)
{
this.style.border = "1px solid red";
stopBubble(e);
}
//检查用户鼠标,当移开元素时,删除我们加上的边框
li[i].onmouseout = function(e)
{
this.style.border = "0px";
stopBubble(e);
}
}
</script>
5,重载浏览器的默认行为
浏览器都有这种默认的行为,即当我们在<a>标签上点击的时候会链接到href属性的地址上,有的时候我们并不希望这种事情发生,而想实现我们自己的效果,比如弹出警告框,示例如下。
复制代码 代码如下:
<a href = "http://www.jb51.net">重载浏览器的默认行为</a>
<script language = "javascript">
/*
为了达到同<a href = "#" onclick = function(){alert("success");}>content</a>相同效果
*/
function stopDefault(e)
{
//W3C防止浏览器默认行为
if (e && e.preventDefault)
e.preventDefault();
//IE防止浏览器默认行为
else
window.event.returnValue = false;
return false;
}
var a = document.getElementsByTagName("a");
for (var i = 0; i < a.length; i++)
{
a[i].onclick = function(e)
{
alert("我已经修改了浏览器的默认行为了");
return stopDefault(e);
//好像直接写下面一句也可以
//return false;
}
}
</script>
6,事件的亲和力(accessibility,又称可访问性)
为了使得自己的网站更有亲和力,可以这样考虑,当我们把鼠标放在一个元素上或者通过键盘的tab键访问时,其样式应该保持一致,如下代码
复制代码 代码如下:
<body>
<div id = "body">
<ul class = "links">
<li>
<a href = "/">Home</a>
</li>
<li>
<a href = "./">mappath</a>
</li>
<li>
<a href = "../">parentpath</a>
</li>
</ul>
</div>
</body>
<script language="javascript">
var a = document.getElementsByTagName("a");
for (var i = 0; i < a.length; i++)
{
//绑定鼠标悬停和聚焦事件处理函数到<a>元素上
//当用户把鼠标悬停到链接上,或者(使用键盘)聚焦到链接上时,它会把<a>的背景颜色变成蓝色
a[i].onmouseover = a[i].onfocus = function()
{
this.style.backgroundColor = "blue";
}
//绑定鼠标离开和模糊事件处理函数到<a>元素上
//当用户从链接移开时,它会把<a>的背景颜色变成白色
a[i].onmouseout = a[i].onblur = function()
{
this.style.backgroundColor = "white";
}
}
</script>
7,绑定事件监听
复制代码 代码如下:
//addEventt()添加事件
//Scott Andrew's original addEvent() function
//elm元素,document.getElementId('btn1')
//evType事件名称,要注意的是"onclick"要改为"click","onblur"要改为"blur",也就是说事件名不要带"on",如Click
//fn当然就是绑定的函数了,记住不要跟括号,如showalert
//useCapture布尔值,表示该事件的响应顺序.userCapture若为true,则浏览器采用Capture,若为false则采用bubbing方式.建议用false
function addEvent(elm, evType, fn, useCapture)
{
if (elm.addEventListener)
{//firefox,navigation,etc..
elm.addEventListener(evType, fn, useCapture);
}
else if (elm.attachEvent)
{//IE
var r = elm.attachEvent('on' + evType,fn);
}
else
{
elm['on' + evType] = fn;
}
}
//removeEvent()注销事件
//参数名同addEvent()函数
function removeEvent(elm, evTye, useCapture)
{
if (elm.detachEvent)
{
elm.detachEvent('on' + evType);
}
else if (elm.removeEventListener)
{
elm.removeEventListener(evType, userCapture);
}
}
发表评论
-
字符集与字符编码
2013-09-06 00:23 1234摘自http://blog.sina.com.cn ... -
网站前端和后台性能优化的34条宝贵经验和方法
2013-04-15 22:38 9971 减少HTTP请求数量 (Minimize HTTP Re ... -
javascript this关键字用法介绍
2013-04-12 12:05 975源于http://www.111cn.net/wy ... -
深度理解原型链
2013-04-09 15:15 2011摘自http://www.cnblogs.com/maoro ... -
前端开发必须知道的JS(一) 原型和继承
2013-04-09 12:58 855源自www.cnblogs.com/ljchow/ ... -
CSS样式表继承详解
2013-04-09 00:15 981什么是继承?要想了解css样式表的继承,我们先从文档树(HT ... -
如何优化JavaScript脚本的性能
2013-04-07 00:08 754循环 循环是很常用的一个控制结构,大部分东西要依靠它来完成 ... -
JavaScript中的隐式类型转换
2013-04-06 23:31 1147如果把通过函数或方法调用,明确的将某种类型转换成另一种类型称 ... -
给定时器settimeout、setInterval调用传递参数
2013-01-17 15:08 1127使window.setTimeout/window.set ... -
浅谈 js中parseInt函数的解析
2013-01-09 22:25 815首先还是从很热门的实例parseInt("09 ... -
round、floor与ceil
2013-01-09 22:16 1032round() 方法可把一个数字舍入为最接近的整数。 ... -
js浮点数精度问题
2013-01-09 21:10 21070大多数语言在处理浮点数的时候都会遇到精度问题,但是在JS ... -
jquery中,html、val与text三者属性取值的联系与区别
2012-01-14 18:49 1727jquery中,html、val与text三者属性取值的联系与 ... -
JS缓存图片实例
2011-12-16 01:02 5761JS缓存图片实例 现有JS功能越来强大了,很多基 ... -
iframe实现无刷新上传文件
2011-12-03 23:29 857[代码] [HTML]代码 view s ... -
js刷新页面代码
2010-10-16 11:15 963先来看一个简单的例子:下面以三个页面分别命名为frame.ht ... -
关于javaScript的IE与FireFox兼容性
2010-10-14 18:30 1392firefox没有window.event对象,其实这个本来不 ... -
js判断浏览器类型
2010-10-14 18:27 1139<!DOCTYPE html PUBLIC " ... -
FireFox与IE禁止右键单击
2010-10-14 14:00 1525<html><head><tit ... -
FireFox与IE事件禁止右键菜单写法的不同
2010-10-14 01:25 2303IE写法 <script> docum ...
相关推荐
关于JavaScript中事件的一些重要说明,需要的朋友可以参考下。
《编写可维护的JavaScript》向开发人员阐述了如何在团队开发中编写具备高可维护性的JavaScript代码,书中详细说明了作为团队一分子,应该怎么写JavaScript。本书内容涵盖了编码风格、编程技巧、自动化、测试等几...
《编写可维护的JavaScript》向开发人员阐述了如何在团队开发中编写具备高可维护性的JavaScript代码,书中详细说明了作为团队一分子,应该怎么写JavaScript。本书内容涵盖了编码风格、编程技巧、自动化、测试等几...
这里需要说明的是很少用到了innerHTML和innerTEXT两个方法,这是微软提供的专利方法,还没有得到W3C的认可, 在别的浏览器里面这两个方法不一定会被支持。 所以很多地方是用了DOM的方式进行处理。 首次的功能有: 1....
此外,还强调了参与JavaScript社区的重要性。通过这个教程,读者可以对JavaScript有一个全面的理解,并为未来的深入学习打下坚实的基础。 ### 适用人群 本博客适合对前端开发和JavaScript感兴趣的初学者。无论你是...
此外,Google JavaScript编码规范指南还强调了代码性能和可维护性的重要性。它提倡使用高效的数据结构和算法,避免不必要的性能开销;同时,也鼓励开发者编写可重用的代码,减少重复劳动,提高开发效率。 对于初学...
注释语句在JavaScript中用来解释代码或者添加说明,对于代码的可读性和维护性都非常重要。在开发过程中,良好的注释习惯可以帮助其他开发者更快地理解代码,也方便自己在以后的维护中快速定位问题。
您是否正在寻找一些很棒的Javascript项目,每个项目都将教给您一个重要的Javascript概念? 您是否想为一些Awesome Javascript项目做出贡献并通过它展示您的Javascript技能? :star-struck: 然后,你来对了! 很...
<br>功能不是最重要的,本功能在windows资源管理器都能轻易做到,相信没人用这个做资源管理器吧,呵呵~~ <br>主要是为了让javascript,DOM,CSS良好的呈现一种网页组织,真正的使 “结构”,“行为”,...
结合从书中获得的知识以及本人实际开发过程中的经验,下面说明本人所采取的一些花招(也算是照本宣科一下)。 前言 相比脚本语言,编译型的语言并不需要太关心优化问题。在极大的程度上,编译时编译器都会之行优化...
lotus domino AJAX json获取视图列重要说明
JavaScript Namaste JS和Core JSAkshay Saini的Namaste JS的重要说明和概念对于采访非常有帮助,请随时推荐他们
本文实例讲述了JavaScript中var的重要性。分享给大家供大家参考,具体如下: 在JS中申明变量是使用var来进行申明,但是有的时候我们没有使用var也可以。这是为什么呢?我来给大家细细的说来。 var的本质 var的本质...
重要说明: 仍然不是HTML中的内置API。 “替换”是一种广泛使用的方法(因为它没有额外的依赖性) underscore具有内置支持。 起源 miniEventEmitter 自制的EventEmitter是自然需要像Backbone这样的完整框架的...
该存储库的历史证明了客户端JavaScript小...这是尝试说明从前者到后者的路径实施的目的不是完美无缺,而仅仅是为了教育目的突出重要的结构方面演示: : 测试套件: : 入门安装npm install和bower install下载第三方组件
Python知识是学习其他语言的重要基础。 本书将利用您的Python编程技能来学习JavaScript,并将其独特的功能不仅用于前端Web开发,而且还用于简化后端的工作,从而帮助您在软件工程领域发展。 本书涵盖以下激动人心的...
本文介绍了JavaScript里面的this属性。这个属性是理解JavaScript类和继承的重要基础。
功能齐全JavaScript日程安排日历。 现在,您的服务刚刚获得了可自定义的日历。 :triangular_flag: 目录 收集有关使用开源的统计信息 TOAST UI日历应用Google Analytics(分析)(GA)来收集有关开放源代码使用情况...