javascript中事件有很多种,这里只谈一个很有用,但不常见的事件。 单击鼠标右键触发的事件contextmenu事件。 document.oncontextmenu=function(){return false;}这样就可以屏蔽掉鼠标右击的事件。当然如果需要什么效果也可以在事件监听函数中添加。原文:http://www.cnblogs.com/smallLong/p/6553894.html
项目中有个需求,事件第一次执行(立即执行)与后几次执行不同,但是直接传递定义好的命名函数,返回结果一样。。如果通过匿名函数内再嵌套具名函数,结果就能返回正确!代码如下:代码<buttonclass="button">按钮</button> (function(w) {//第一次定义需要执行的代码块var fn = function() {console.log(1);};var btn = document.querySelector(‘.button‘);btn.addEventListener(‘click‘, fn, false);btn.click();//覆...
首先,此文不讨论繁琐细节,但是考虑到读者的心灵感受,本着以积极向上的心态,在此还是会列举示例说明。?标题为理解DOM事件,那么在此拿一个简单的点击事件为例,希望大家看到这个例子后能触类旁通。 最初我们给页面实现点击,就像下面这样的简单操作。 先定义一个块如<div id="weiyuzhou">微宇宙</div>,之后在<script type="text/javascript"></script>内部实现id为weiyuzhou的点击事件,如下代码所示:var wyz = document.getE...
splice针对数组的使用,表示给数组插入一个新的参数,返回一个新的数组,还会修改原来的数组,怎么理解这个意思,比如现在的数组arr = [1,2,3],现在给数组添加一个新的字符串‘Thomson‘,如arr.splice(1,‘Thomson‘),得到的新数组[1,‘Thomson‘,2,3],这样都可以,splice可以随意的插入到数组的任意地方,说明了splice的强大之处,所以我们可以在方法内使用数组的时候可以调用splice如function o(thing.splice){},当然也能删...
之前写了篇文章《原生javascript实现类似jquery on方法的行为监听》比较浅显,能够简单的使用场景。这里的自定义事件指的是区别javascript默认的与DOM交互的事件,比如click,mouseover,change等,有时候我们需要监听某一行为是否发生,很显然默认的行为不够用,比如一个场景。我们写好了tab切换,点击后请求加载隐藏标签的内容。tab切换是非常常用的一个功能,通常会写成组件,如果每次把请求写在组件里肯定对组件拓展和耦合性有影...
jQuery $(document).ready()和JavaScript onload事件 jQuery $(document).ready()和window.onload 根据ready()方法的API说明http://api.jquery.com/ready/ 这个方法接收一个function类型的参数ready(handler), 方法的作用是: Specify a function to execute when the DOM is fully loaded. 即当DOM加载完毕的时候,执行这个指定的方法. 因为只有document的状态ready之后,对page的操作才是安全的.$(document).ready()仅在...
目录一、DOM0级事件处理二、事件冒泡与事件捕获三、DOM2级事件处理四、IE事件处理程序及跨浏览器支持五、事件对象一、DOM0级事件处理事件,由WEB页面中发生的一些特定行为触发。比如在某个页面元素上按下鼠标左键,按下键盘某个按键,某对象获得或丢失焦点时均会触发对应的事件。JavaScript和HTML的交互就是通过事件来实现的。我们使用事件侦听器对事件进行“注册”,事件发生时便执行相应的代码。DOM0级事件处理程序以其简单、跨浏...
“通过事件机制,可以将类设计为独立的模块,通过事件对外通信,提高了程序的开发效率。” 可以把多个关联但逻辑复杂的操作利用自定义事件的机制灵活地控制好对象之间通过直接方法调用来交互1)对象A直接调用对象B的某个方法,实现交互;直接方法调用本质上也是属于一种特殊的发送与接受消息,它把发送消息和接收消息合并为一个动作完成;方法调用方和被调用方被紧密耦合在一起;因为发送消息和接收消息是在一个动作内完成,所以无...
方法一<!DOCTYPE html> <html> <head><title>Javascript中点击事件方法一</title> </head> <body><button id="btn">click</button><script type="text/javascript">var btn = document.getElementById("btn");btn.onclick=function(){alert("hello world");}</script> </body> </html> 方法二<!DOCTYPE html> <html> <head><title>Javascript中点击事件方法二</title> </head> <body><button id="btn">click</button><script type=...
<style> div { width: 100px; height: 100px; background-color: red; } </style> <script>var div = document.querySelector(‘div’);div.addEventListener(‘click’,function(event){ //event就是一个事件对象,写到我们的侦听函数的括号里面,当做一个形参来看 //事件对象只有了事件才会存在,是系统自动给我们创建的,不需要...
为了让函数只在页面加载完毕后才得到执行,我们会把函数绑定到onload事件上:window.onload = userFunction但如果有两个函数:firstFunction() 和 secondFunction(),都想让它们在页面加载完毕后得到执行,该怎么办?如果这样: window.onload = firstFunciton; window.onload = secondFunction;只有最后一个函数能被执行。由此可得:每个事件处理函数只能绑定一条指令。但我们可以这样做: window.onload = function...
Javascript包含三种模型:内联模型、脚本模型和DOM2模型。1.内联模型(现在基本不用了) 即事件响应处理函数作为一个标签属性来执行,典型的就是onclick()函数;<input type=‘button‘ value=‘按钮‘ onclick="alert(‘点击了!‘)" /> 2.脚本模型 为了解决html与javascript的分离。window.onload=function(){var input=document.getElementByTagName(‘input‘)[0];input.onclick=function(){alert("点击了!");} }PS:也...
function addEvent(el ,type ,fn){if(el.addEventListener){el.addEventListener(type,fn,false);}else if(el.attachEvent){el.attachEvent(‘on‘+type,fn);}else{el[‘on‘+type] = fn;}}function alertIndex(){alert(2);}addEvent(ipt[0],‘click‘,function(){alert(1)});addEvent(ipt[0],‘click‘,alertIndex); 原文:http://www.cnblogs.com/bestsamcn/p/5206833.html
JS为何是单线程的? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊。(在JAVA和c#中的异步均是通过多线程实现的,没有循环队列一说,直接在子线程中完成相关的操作)JavaScript的单线程,与它的用途有关。作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假...
初学者经常碰到的,即获取HTML元素集合,循环给元素添加事件。在事件响应函数中(event handler)获取对应的索引。但每次获取的都是最后一次循环的索引。原因是初学者并未理解JavaScript的闭包特性。有个网友问了个问题,如下的html,为什么点击所有的段落p输出都是5,而不是alert出对应的0,1,2,3,4。1. <!DOCTYPE HTML>2. <html>3. <head>4. <meta charset="utf-8" />5. <title>闭包演示</title>6. <style type="text/css"...