zoukankan      html  css  js  c++  java
  • JavaScript DOM 编程艺术(第2版)读书笔记(4)

    案例研究:JavaScript 图片库

    改变图片的src属性的两种方式:

    1,setAttribute方法是“第1级DOM”的组成部分,它可以设置元素节点的任意属性。

    2,element.src = source;这是在“第1级DOM”出现之前的方法,现在也有效。

    “第1级DOM”的优势是可移植性好,那些老方法只适用于Web文档,DOM则适用于任何一种标记语言。

    事件处理函数

    当点击某个链接时,我希望留在这个网页面而不是转到另一个窗口,代码如下:

    <a href="http://www.example.com" onclick="showPic(this); return false ;">Click</a>

    当点击这个链接时,因为onclick事件处理函数所触发的Javascript代码返回的值是false,所以这个链接的默认行为没有被触发.

    childNodes属性

    childNodes属性可以用来获取任何一个元素的所有子元素。由childNodes属性返回的数组包含所有类型的节点,而不仅仅是元素节点。事实上,文档里几乎每一样东西都是一个节点,甚至连空格和换行符都会被解释为节点,而它们全都包含在childNodes属性所返回的数组中。

    但每个节点都有nodeType属性。nodeType属性总共有12种可取值,但其中仅有3种具有使用价值:元素节点的nodeType属性值是1,属性节点的nodeType属性值是2,文本节点的nodeType属性值是3.

    如果想改变一个文本节点的值,那么就用DOM提供的nodeValue属性。

    数组元素childNodes[0]有个更直观易读的同义词,可以把它写成firstChild;DOM还提供了一个与之对应的lastChild属性。

    示例:

    <p id="description">Choose an image</p>

    首先创建一个变量来存放它:

    var description = document.getElementById("description");

    description.nodeValue的返回值是null。<p>元素本身的nodeValue属性是一个空值,而如果想要得到<p>元素包含的文本的值,要用description.childNodes[0].nodeValue或者description.firstChild.nodeValue

    <!--

    作者:纤锐
    出处:http://www.cnblogs.com/beginner2014/p/4152647.html
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。谢谢合作。

    -->

  • 相关阅读:
    类与对象
    最大子段和
    贪心-Wooden Sticks
    MFC改变坐标系
    Java集合不能存放基本数据类型
    关于lower_bound( )和upper_bound( )的常见用法
    数组乘法(大整数相乘)
    米勒罗宾素数测试法
    深度搜索--poj1321 棋盘问题
    memcpy复制整型数组相关
  • 原文地址:https://www.cnblogs.com/beginner2014/p/4152647.html
Copyright © 2011-2022 走看看