留言板.. 捕获型事件流

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
.message {
width: 500px;
height: 500px;
padding: 1px;
font-size: 12px;
background-color: #999999;
overflow: auto;
}
.txts {
width: 496px;
height: 100px;
background-color: #0095BB;
}
</style>

<script type="text/javascript">
window.onload = function() {
var msg = document.getElementById("message");
var txts = document.getElementById("txts");
var btn = document.getElementById("btn");
btn.onclick = txts.onkeydown = function(e) {
var ev = e || window.event;
if(ev.type == "click" || (ev.type == "keydown" && ev.keyCode == "13" && ev.ctrlKey)) {
var eleP = document.createElement("p");
eleP.innerHTML = txts.value;
msg.appendChild(eleP);
txts.value = "";
txts.focus();
}
}
}
</script>

</head>
<body>
<div id="message" class="message">
<h3>留言板</h3>
<hr/>
</div>
<form name="msgForm">
<textarea class="txts" name="txts" id="txts">
</textarea>
<input class="btn" id="btn" type="button" value="提交"/>
</form>
</body>
</html>

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style type="text/css">
.out {
width: 300px;
height: 300px;
border: 1px solid red;
padding: 20px;
}

.inner {
width: 150px;
height: 150px;
background-color: #999999;
}
</style>
<script type="text/javascript">
window.onload = function() {
var out = document.getElementById("out");
var inner = document.getElementById("inner");
//添加事件
out.addEventListener("click", fn1, true);
inner.addEventListener("click", fn2, true);
};
function fn1(event) {
alert("out");
// stopEvent(event);
}
function fn2() {
alert("inner");
}
function stopEvent(obj) {
if(document.all) {
//ie
ob2j.cancelBubble = true;
} else {
//FF
obj.stopPropagation();
}
}
</script>
</head>
<body>
<div class="out" id="out">
<div class="inner" id="inner"></div>
</div>
</body>
</html>

时间: 2024-10-23 22:08:21

留言板.. 捕获型事件流的相关文章

冒泡型事件、捕获型事件

冒泡型事件的基本思想是.事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发. <html>        <head>            <title></title>     </head>         <body onclick="theClick()">         <div onclick="theClick()">点击</di

【事件流】事件冒泡和事件捕获

事件流: 通俗的说就是:元素触发时,传播的过程. 冒泡型事件流:事件的传播是从最具体的事件目标到最不具体的事件目标.即从DOM树的叶子到根. <div>-><body>-><html>->document 捕获型事件流:事件的传播是从最不具体的事件目标到最具体的事件目标.即从DOM树的根到叶子. document-><html>-><body>-><div> 事件流包括三个阶段: 事件捕获阶段:实际

事件流 事件冒泡和事件捕获

事件冒泡和事件捕获 他们是描述事件触发时序问题的术语. DOM标准规定事件流包括三个阶段:事件捕获阶段.处于目标阶段和事件冒泡阶段.捕获型事件流:事件的传播是从最不特定的事件目标到最特定的事件目标.即从外部到内部. 冒泡型事件流:事件的传播是从最特定的事件目标到最不特定的事件目标.即从内部到外部 事件冒泡 <body> <div class="parent"> <div class="son"> <div class=&qu

javaScript事件(一)事件流

一.事件 事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字.事件是javaScript和DOM之间的桥梁.你若触发,我便执行——事件发生,调用它的处理函数执行相应的JavaScript代码给出响应.典型的例子有:页面加载完毕触发load事件:用户单击元素,触发click事件. 二.事件流 1.事件流感性认识问题:单击页面元素,什么样的元素能感应到这样一个事件?答案:单击元素的同时,也单击了元素的容器元素,甚至整个页面.例子:有三个同心圆, 给每个圆添

jQuery事件传播,事件流

一. jQuery事件传播 在DOM2级事件模型中,一旦事件被触发.事件流首先从DOM树顶部(文档节点)向下传播.直到目标节点.然后再从目标节点向上传播到DOM树顶.从上到下的过程被称为捕获阶段.从下到上的过程被称为冒泡阶段. 利用循环体结构分别为button元素及其全部父级节点注冊一个捕获型鼠标单击类事件处理函数. 代码演示样例: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q

javaScript事件流是什么?

一.事件 事件是文档或者浏览器窗口中发生的,特定的交互瞬间. 事件是用户或浏览器自身执行的某种动作,如click,load和mouseover都是事件的名字. 事件是javaScript和DOM之间交互的桥梁. 你若触发,我便执行--事件发生,调用它的处理函数执行相应的JavaScript代码给出响应. 典型的例子有:页面加载完毕触发load事件:用户单击元素,触发click事件. 二.事件流 事件流描述的是从页面中接收事件的顺序. 1.事件流感性认识 问题:单击页面元素,什么样的元素能感应到这

js事件捕获,事件冒泡,事件委托以及DOM事件流

一:DOM事件流: 事件流是从页面接收事件的顺序,DOM2级事件规定事件流包括三个阶段: ①事件捕获阶段:用意在于事件达到目标之前捕获它,在事件捕获阶段事件流模型:document→html→body→div ②处于目标阶段2:实际的目标到事件 ③事件冒泡阶段:由最具体的元素接收到事件,然后向上传播到较为不具体的节点.事件流模型:div →body→ html→ document 二:事件委托 事件委托顾名思义:将事件委托给另外的元素.其实就是利用DOM的事件冒泡原理,将事件绑定到目标元素的父节

DOM事件: DOM事件级别、DOM事件流、DOM事件模型、DOM事件捕获过程、自定义事件

前端面试中只要问到事件,就肯定会有DOM事件:如果回答出来了,就会一直向下延申,其实这些东西都很简单,但我第一次被问到的时候,也是懵的: DOM事件级别: DOM0 element.onclick = function() { } DOM1 一般只有设计规范,没有设计跟事件相关的东西:所以直接跳过 DOM2 element.addEventListener(‘click’, function() { }, false) DOM3 element.addEventLIstener(‘keyup’,

JS事件流

事件流:当页面元素触发事件的时候,该元素的容器以及整个页面都会按照特定顺序响应该元素的触发事件,事件传播的顺序叫做事件流. 一.事件流的分类 1.冒泡型事件(所有的浏览器都支持 w3c标准) 由明确的事件源到最不确定的事件源依次向上触发. 2.捕获型事件(IE不支持 w3c标准 火狐) 不确定的事件源到明确的事件源依次向下触发. addEventListener(事件,处理函数,false) addEventListener(事件,处理函数,true) 二.阻止事件流 IE: 事件对象.canc