DHTML对象模型 (三)

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

禁止事件:
所有的事件都将向它们的父级元素冒泡,而且除非冒泡过程中事件被禁止了,否则事件将会被递归地沿着层次结构的路径最后上浮到文档对象(document object)。要禁止一个事件,你必须在事件句柄中把window.event.cancelBubble属性的值设为“true”。注意一点,除非事件被禁止了,否则,在沿着层次结构冒泡的过程中,它将会被所有注册了这个事件句柄的父级元素处理,即使它已经在子级元素中被处理过了。

禁止事件冒泡与禁止事件的默认行为是不同的。一些事件(例如:一个锚点上的onclick)具有默认行为。当一个锚点被单击时,它默认的行为是把当前窗口导航到其src属性所指定的URL。在事件句柄中返回“false”,或者设置window.event.returnvalue属性为“false”,可以禁止事件的默认行为,但不能禁止事件的向上冒泡。要禁止向上冒泡,只有把window.event.returnvalue属性设为“true”,相对应地,禁止事件冒泡的设置也并会禁止事件的默认行为。

最后一个例子是演示如何利用事件冒泡将一个共同的效果应用到一组元素上的。若你想把其中一个元素排除在这个效果之外,只要简单地把下面这行代码,从:

<SPAN class=Item>Ham</SPAN>
修改为:

<SPAN class=Item onmouseover="window.event.cancelBubble = true;"
    onmouseout="window.event.cancelBubble = true;">Ham</SPAN>
就可以了。

(例子的超级链接:

http://msdn.microsoft.com/workshop/samples/author/dhtml/overview/dom_03.htm )

进一步的思考:
在有些情况下,你可以让一个onmouseover事件只注册在一个对象上,考虑下面情况:

<DIV id=MyDiv>
<IMG id=MyImg>
</DIV>
假如你在img对象上移动鼠标指针,事件将会以下面的顺序激发:

MyDiv:: onmouseover
MyDiv:: onmouseout
MyImg:: onmouseover
把你的鼠标指针从img对象上移开将会再次激发MyDiv::onmouseover事件。

有些时候,网页制作者可能会想去探测鼠标指针何时移出一个div对象以实现某种

特别效果。这时,仅仅简单地设置onmouseout事件就并不足够了。为了使这种情况更容易解决,IE4.0标准为onmouseover和onmouseout事件增加了指示源对象(formElement)和目标对象(toElement)的属性,你可以综合使用这些属性和容器的方法来辨别鼠标指针何时移出了一个区域。

 下面的例子演示了如何使用这些属性和方法:

(例子的超级链接:

http://msdn.microsoft.com/workshop/samples/author/dhtml/overview/dom_04.htm

<HTML>
<BODY id=Body>
<DIV id=OuterDiv style="width: 100px; height: 50px; background: red" 
    onmouseover="over();" onmouseout="out();">
<IMG id=Img1>
<IMG id=Img2>
<IMG id=Img3>
</DIV>
<SCRIPT>
function over() {
    var s;
    s = "onmouseover: "+window.event.srcElement.id+" from: "+
 
window.event.fromElement.id+" to: "+window.event.toElement.id;
    alert(s);
}
 
function out() {
    var s;
    s = "onmouseout: "+window.event.srcElement.id+" from: "+
 
window.event.fromElement.id+" to: "+window.event.toElement.id;
    alert(s);
 
if (!(OuterDiv.contains(window.event.toElement))) 
/*onmouseout事件并非由于鼠标指针从OuterDiv对象移进与其内部接壤的img对象而激发的,即:鼠标指针是真正的离开了整个OuterDiv包含的区域(译者注)*/
{
        alert("Out Now");
    }
}
</SCRIPT>
 
</BODY>

JS 基础(一):DHTML、DOM、BOM javascript相关技术要点 本文介绍了跟javascript相关的技术要点,其中包括js基础语法,js原型与原型链,js作用域和闭包,js异步等内容 文章目录javascript相关技术要点一、js基础语法1.1 数据类型1.2 数据类型转换1.3 等于与全等于1.4 truly变量与falsely变量二、原型与原型链2.1 隐式原型与显式原型2.2 原型链总结 一、js基础语法 1.1 数据类型 常见值类型:number、string、boolean、undefined、Symbol('s') 阅读详情

相关推荐

DHTML对象模型(About the DHTML Object Model)()

禁止事件:所有的事件都将向它们的父级元素冒泡,而且除非冒泡过程中事件被禁止了,否则事件将会被递归地沿着层次结构的路径最后上浮到文档对象(document object)。要禁止一个事件,你必须在事件句柄中把window.event.cancelBubble属性的值设为“true”。注意一点,除非事件被禁止了,否则,在沿着层次结构冒泡的过程中,它将会被所有注册了这个事件句柄的父级元素处理,即使它

heroyu的专栏 930

DHTML对象模型

什么是对象模型呢打个比方,我们可以把一个房间当作一个对象模型,那么房间里面的人,桌子就是一个个对象,而人的行为就可以看作对象的动作,而语言就可以当作是一个事件的触发DHTML对象模型和房间这个对象模型一样,可以让你访问浏览器的各个元素,可以访问正在浏览的web页面,也可以访问历史的页面.www协会指定的对象模型中主要有以下四个方面的内容:1)集合:是DHTML用来将HTML文档汇集到一个数

每天进步一点点 858

DHTML对象模型(About the DHTML Object Model)()

 【注:最近在学习asp.net,觉得javascript的很多知识在asp.net中仍很有用,又觉得javascript的实质是利用脚本对DHTML对象编程,但网上关于DHTML层次结构的中文资料又比较少,所以看了msdn上的这个资料后就翻译了出来,希望大家多多指教。】DHTML对象模型(About the DHTML Object Model)  动态HTML(DHTML)

heroyu的专栏 916

深入浅出JavaScript (四)DHTML

DHTML对象模型是将浏览器和HTML文件的标签都对象化,以便Javascript程序代码可以轻易地操控浏览器和访问HTML标签的对象.      DHTML并没有建立全新的HTML标签集和样式之间的关系,Script程序代码可以控制文件的元素,样式可以建立文件元素的编排,Script程序代码可以访问样式或初始化样式.      访问HTML文件的所有元素,将每一个HTML标签视为一个对象,使

李龙生 1万+

1.1什么是DHTML

1 DHTML 1.1 什么是DHTML   DHTML: Dynamic HTML 动态的HTML, 这门技术并不是一门新的技术, 而是将我们之前所学的HTML、CSS、JavaScript整合在一起,利用JS操作页面元素, 让元素具有动态的变化, 使得页面和用户具有交互的行为.   示例:点击div改变div的宽高及背景颜色.    1.2DHTML的原理 1.2.1DHT...

weixin_41704733的博客 4202

DHTML 属性

下面列出了动态 HTML(DHTML) 对象模型中的属性。标签属性/属性 !important 增加特定规则的重要性。 :active 设置当链接处于激活状态时 a 元素的样式。

圣彼得堡之光的专栏 690

DOM和DHTML[资料]

1. DOM的对象属性DOM提供了一套属性用于导航、访问和更新文档内容,其中包括只读类型的属性和可读写类型的属性。  下表是只读类型的属性:DOM对象属性 返 回 值FirstChild 返回一个对象(Object),表示第一个孩子节点(child node)。LastChild 返回一个对象(Object),表示最后一个孩子节点(child node)。NextSibling 返回一个对象(Ob

helanye的专栏 695

DHTML对象模型方法-innerHTML

*     DHTML对象模型方法为JavaScript提供了得到网页对象的另外方法,使用时可以不必具体了解文档对象模型的结构层次,而直接得到网页中的所需元素对象。这样,JavaScript就可以方便地改变网页内容及网页的表现方式。*     该对象模型方法具有如下特点。在HTML中,网页中的每一对标记就是一个元素对象,例如,<p></p>、< div><

gaotianle的专栏 985

JS应用DOM入门:和DHTML对象模型的比较

    DOM是文档对象化模型(Document Object Model)的简称。使用过DHTML对象模型的开发者一定能非常熟练地操作HTML页面上的每个标记内容,但如果借助DOM技术,我们就可以通过更加直接而且简易的方式达到同样的目的。   概要  DOM技术被Internet Explorer 5.0及以上版本的浏览器所支持,它采取一种非常直观且一致的方式将HTML文档进行模型化处理,并...

雪临凝冰xlnb 175

DHTML介绍

一. 概述 DHTML: Dynamic HTML 即动态的 html DHTML并不是一门新的技术, 而是将现有的HTML, CSS, JavaScript整合在一起, 形成了DHTML技术. DHTML分为BOM和DOM。 BOM:Browse Object Modle 即浏览器对象模型,其中封装了浏览器操作相关对象。 DOM:Document Object Modle 即文档对象模型,将整个HTML文档按照文档结构组织成了树形结构。 二. BOM 2.1.window对象 此对象为

阳young的博客 1751

DHTML

DHTML概述 什么是DHTML DHTMK:Dynamic HTML 动态的 html DHTML不是一门新的技术,而是将已有的HTML、css、JS整合在了一起,实现了通过JS访问元素和css属性 在DHTML中,是通过JS访问html元素或者css属性,使得页面具有动态的变化,从而和用户具有了交互的行为 实例:通过点击按钮改变属性<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"&g

qq_46019010的博客 264

dhtml 简介 (附录dhtml参考手册)

DHTML是Dynamic HTML的简称,就是动态的html,是相对传统的静态的html而言的一种制作网页的概念。所谓动态HTML(Dynamic HTML,简称DHTML),其实并不是一门新的语言,它只是HTML、CSS和客户端脚本的一种集成,即一个页面中包括html+css+javascript(或其它客户端脚本),其中css和客户端脚本是直接在页面上写而不是链接上相关文件。DHTML不是一

水泽木兰 1311

JS应用DOM入门(1): 和DHTML对象模型的比较

这些文章都是我刚接触web编程时收藏下来的一些东东.我想如果要把网页做好,那么你对js操作页面元素必需熟悉,而dom是一项很好的技术 DOM是文档对象化模型(Document Object Model)的简称。使用过DHTML对象模型的开发者一定能非常熟练地操作HTML页面上的每个标记内容,但如果借助DOM技术,我们就可以通过更加直接而且简易的方式达到同样的目的。 ...

weixin_30496751的博客 160

加快 DHTML 的一组技巧

加快 DHTML 的一组技巧Mark DavisMicrosoft Corporation摘要:本文说明了某些 DHTML 功能对性能的重大影响,并提供了一些提高 DHTML 页面性能的技巧。目录简介成批处理 DHTML 更改使用 innerText使用 DOM 添加单个元素扩展 SELECT 元素中的选项用 DOM 更新表编写一次,使用多次请勿过多使用动态属性数据绑定很有效不要在

qpl007(蓝色闪电)的专栏 858
上一篇: DHTML对象模型 (二)
下一篇: 常见图像压缩方法
foxmail
博客等级 码龄25年 11粉丝 92原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值