`
pcajax
  • 浏览: 2157238 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

MooTools教程(2):DOM选择器

阅读更多

如果你还没有准备好,请先阅读上一篇《Mootools 1.2教程(1)——MooTools介绍》。我们讲了怎么引用MooTools 1.2以及怎么在domready里面调用你的脚本。

今天开始本系列教程的第2讲。在这一讲中,我们会学习几种选择HTML元素的方法。在许多方面,这是MooTools用得最多最基本的。毕竟,要创建一个基于HTML元素的交互性用户体验,你必须首先把它们掌握在手中。

基本的方法

$();

$函数是MooTools中基本的选择器。你可以通过它来根据一个ID选择DOM元素。

参考代码:  [复制代码]  [保存代码]
  1. // 选择ID为”body_wrap“的元素
  2. $('body_wrap');
参考代码:  [复制代码]  [保存代码]
  1. "body_wrap">

.getElement();

.getElement();扩展了$方法,可以让你简化你的选择操作。例如,你可以通过$方法来选择ID为”body_wrap“的元素,然后选 择第一个子节点。.getElement();只选择一个元素,如果有多个符合要求的元素则返回第一个元素。如果你给.getElement();方法一 个CSS类名作为参数,你就会得到第一个有这个CSS类名的元素,而不是函数所有元素的数组。要选择多个元素,则可以使用下面 的.getElements();方法。

参考代码:  [复制代码]  [保存代码]
  1. // 选择ID为”body_wrap“的元素下面的第一个链接
  2. $('body_wrap').getElement('a'); 
  3.  
  4. // 选择ID为”body_wrap“的元素下面的ID为”special_anchor“的元素
  5. $('body_wrap').getElement('#special_anchor'); 
  6.  
  7. // 选择ID为”body_wrap“的元素下面第一个CSS类名为”special_anchor_class“的元素
  8. $('body_wrap').getElement('.special_anchor_class');
参考代码:  [复制代码]  [保存代码]
  1. "body_wrap">
  2.         "#">anchor
  3.         "#">another anchor
  4.         "special_anchor" href="#">special anchor
  5.         "special_anchor_class" href="#">special anchor
  6.         "special_anchor_class" href="#">another special anchor

$$();

$$函数可以可以让你快速选择多个元素,并组成一个数组(一种你可以操作、获取和以任何方式重新排序的列表)。你可以通过标签名(如div、a、img等)、或者ID或者是他们的各种组合来选择多个元素。就像一个读者指出的那样,你可以用$$做很多事情,远远超出我们这里所介绍的。

参考代码:  [复制代码]  [保存代码]
  1. // 选择这个页面中的所有div
  2. $$('div'); 
  3.  
  4. // 选择ID为”id_name的元素和所有的div
  5. $$('#id_name''div');
参考代码:  [复制代码]  [保存代码]
  1.     
    a div
  2.     "id_name">a span

.getElements();

.getElements();和.getElement();非常类似,不过它返回所有符合要求的元素,并组成一个数组。你可以想使用.getElement();方法那样使用.getElements();。

参考代码:  [复制代码]  [保存代码]
  1. // 选择ID为”body_wrap“的元素下面的所有链接
  2. $('body_wrap').getElements('a'); 
  3.  
  4. // 选择ID为”body_wrap“的元素下面的所有CSS类名为”special_anchor_class“的子元素
  5. $('body_wrap').getElements('.special_anchor_class');
参考代码:  [复制代码]  [保存代码]
  1. "body_wrap">
  2.         "#">anchor
  3.         "#">another anchor
  4.         "special_anchor_class" href="#">special anchor
  5.         "special_anchor_class" href="#">another special anchor

用运算符包含和排除结果

运算符

MooTools 1.2支持几种运算符,可以让你进一步精简你的选择操作。你可以在.getElements();中使用这些运算符来包含或者排除特定的结果。MooTools支持4种运算符,每一种都可以用来通过名字(name)选择一个input元素。

  • = : 等于
参考代码:  [复制代码]  [保存代码]
  1. //选择name为”phone_number“的input元素
  2. $('body_wrap').getElements('input[name=phone_number]');
     
参考代码:  [复制代码]  [保存代码]
  1. // 选择name以”phone“开头的input元素
  2. $('body_wrap').getElements('input[name^=phone]');
  • $= : 以……结束
参考代码:  [复制代码]  [保存代码]
  1. // 选择name以数字(number)结束的input元素
  2. $('body_wrap').getElements('input[name$=number]');
  • != : 不等于
参考代码:  [复制代码]  [保存代码]
  1. // 选择名字不等于”address“的input元素
  2. $('body_wrap').getElements('input[name!=address]');
参考代码:  [复制代码]  [保存代码]
  1. "body_wrap">
  2.     "address" type="text" />
  3.     "phone_number" type="text" /> 

(Fdream注:input在这里只是作为一个例子,你同样可以使用这种方式选择其他元素,比如div、a等等。)

要使用运算符,你必须首先指定元素的类型(比如这里的input),然后指定你要过滤的属性(比如这里的name),再加上你的 运算符,最后选择你的过滤字符串。

基于元素顺序的选择器

even(偶数选择)

通过这个简单的选择器,你可以选择序号为偶数的元素。注意:这个选择器从0开始计数,因此第一个元素是偶数序的。

参考代码:  [复制代码]  [保存代码]
  1. // 选择序号为偶数的div
  2. $$('div:even');
参考代码:  [复制代码]  [保存代码]
  1. Even
  2. Odd
  3. Even
  4. Odd

odd(奇数选择)

和even一样,只不过它选择序号为奇数的元素。

参考代码:  [复制代码]  [保存代码]
  1. // 选择所有序号为奇数的div
  2. $$('div:odd');
参考代码:  [复制代码]  [保存代码]
  1. Even
  2. Odd
  3. Even
  4. Odd

.getParent();

通过.getParent();方法,你可以得到一个元素的父元素(parent)。

参考代码:  [复制代码]  [保存代码]
  1. // 选择ID为”child_id“的元素的父元素
  2. $('child_id').getParent();
参考代码:  [复制代码]  [保存代码]
  1. "parent_id"> 
  2.     "child_id">Even
  • 代码举例

    任何MooTools UI开发都是从选择器开始的。这里是一些非常简单的例子,演示了怎么去使用选择器操作DOM元素。

    参考代码:  [复制代码]  [保存代码]
    1. // 设置所有span的背景颜色为#eee
    2. $$('span').setStyle('background-color''#eee');
    3. // 设置所有序号为奇数的span的背景色为#eee
    4. $$('span:odd').setStyle('background-color''#eee'); 
    5.  
    6. // 设置ID为body_wrap的元素下的所有CSS类名为.middle_spans的span的背景色为#eee
    7. $('body_wrap').getElements('.middle_spans').setStyle('background-color''#eee');
    参考代码:  [复制代码]  [保存代码]
    1. "body_wrap">
    2.     Even
    3.     "middle_spans">Odd
    4.     "middle_spans">Even
    5.     Odd
分享到:
评论

相关推荐

    一周学会Mootools 1.4中文教程(1)Dom选择器

    ### Mootools 1.4中文教程:Dom选择器详解 #### 一、前言 在Web开发领域,JavaScript框架的出现极大地简化了前端开发工作。Mootools作为一款轻量级、强大的JavaScript库,提供了丰富的功能来帮助开发者快速构建...

    Mootools 1.2教程(2) DOM选择器

    如果你还没有准备好,请先阅读上一篇《Mootools 1.2教程(1)——... $函数是MooTools中基本的选择器。你可以通过它来根据一个ID选择DOM元素。 参考代码: 代码如下:// 选择ID为”body_wrap“的元素 $(‘body_wrap’);

    Mootools 双区间节点的滑块选择器.zip

    总的来说,"Mootools 双区间节点的滑块选择器"是一个基于Mootools框架实现的交互组件,它结合了DOM操作、事件处理、数值计算等多个JavaScript技术,提供了一种直观的区间选择方式,适用于多种场景。

    mootools教程

    - `$$`:这个方法允许使用CSS选择器语法来获取一组DOM元素。例如,`$$('a')`将返回页面上所有的`<a>`标签,`$$('a', 'b')`则会返回`<a>`和`<b>`标签。 2. **Element扩展方法** - `inject`:此方法允许将一个元素...

    mootools实现同页面不同日期选择效果

    标题"mootools实现同页面不同日期选择效果"意味着我们需要在同一个网页上为不同的元素或功能区配置不同的日期选择器。这可能涉及到对多个日期输入框的独立控制,或者是在不同的日期选择场景下展示不同的用户界面。 ...

    mootools 教程

    2. **DOM操作**:介绍如何通过MooTools方便地查找、创建、修改和删除DOM元素,包括选择器API,如$$和$$(),以及Element和Elements对象的常用方法。 3. **事件处理**:讲解如何绑定和触发DOM事件,使用事件委托提高...

    mootools框架入门教程

    $$方法是mootools框架中一个功能强大的方法,它可以通过CSS选择器语法来获取DOM元素。例如: `$$('a'); //获取页面上所有超链接标签对象` `$$('a','b'); //获取页面上所有超链接标签和粗体标签` `$$('#my_div'); //...

    Mootools 1.2快速学习教程

    `Selectors`模块则实现了类似于jQuery的选择器功能,如`$$`和`$`,使得选取DOM元素更为便捷。此外,`Selectors`还支持CSS3选择器,提高了代码的可读性和可维护性。 `Ajax`模块是Mootools处理异步请求的关键部分。...

    mootools 1.2 中文教程

    - `$`:选择器函数,类似于jQuery中的`$`,可以用来选取DOM元素。 - `Element`:核心DOM元素类,提供了丰富的操作方法,如添加/删除样式、获取/设置属性、插入/移除子元素等。 - `Elements`:用于处理多个DOM元素...

    mootools详细教程

    - `$$`函数:这个函数使用CSS选择器语法来获取多个DOM元素。例如`$$('a')`会返回页面上所有的`<a>`标签对象。 3. **Element扩展方法** - `inject`方法:此方法用于将元素插入到其他元素的特定位置。可以传入'...

    Mootools 1.2 中文版 教程

    3. **选择器引擎**:类似于jQuery的 `$` 函数,Mootools提供了一个强大的选择器引擎,可以快速选取DOM元素,支持CSS1至CSS3的选择器。 二、主要特性 1. **Element对象**:Mootools将每个DOM元素封装为一个Element...

    mootools中文教程.doc

    总的来说,MooTools的Element篇提供了一套完善的DOM操作解决方案,它不仅封装了基本的DOM查找和操作,还引入了CSS选择器支持和一系列增强的DOM操作方法,提高了代码的可读性和开发效率。通过学习并熟练运用这些方法...

    MooTools1.4中文PDF手册+MooTools-Core-1.5.1.js

    - **选择器引擎**:类似于jQuery的选择器API,MooTools允许开发者通过CSS选择器快速获取DOM元素集合。 2. **MooTools Core 1.5.1** - **核心模块**:MooTools-Core是MooTools的基础部分,包含了最核心的功能,如...

    (二) mootools的DOM操作

    `$$`函数是MooTools中最常用的元素选择器,它可以接受CSS选择器,返回一个Element集合。例如,`$$('div.someClass')`将选取所有类名为'someClass'的`<div>`元素。此外,`$`函数作为快捷方式,用于选取单个元素,类似...

    mootools

    2. **DOM操作**:MooTools提供了丰富的DOM(文档对象模型)操作接口,如选择元素、添加或删除样式、创建和插入节点等,简化了对HTML元素的操作。 3. **事件处理**:MooTools的事件系统允许绑定和解绑事件,同时支持...

    mootools 1.2 中文文档

    - **Selectors**:支持CSS选择器,使获取DOM元素变得更加简单,如`$$`用于获取匹配选择器的所有元素。 - **事件绑定**:`addEvent`和`removeEvent`方法用于添加和移除事件监听器,支持事件委托。 3. **Ajax**: ...

Global site tag (gtag.js) - Google Analytics