首页 > 其他分享 >MooTools教程(1):认识MooTools

MooTools教程(1):认识MooTools

时间:2022-12-28 17:00:12浏览次数:63  
标签:domready 教程 元素 1.2 认识 代码 JavaScript MooTools


有人最近要求我们写一个关于MooTools 1.2的30天的教程,这似乎也是个很不错的主意,于是我们决定现在就开始。在这些教程中,我们假设用户没有任何MooTools或者是JavaScript经验,但是至少有基本的HTML和CSS知识。

MooTools 1.2 JavaScript库介绍

​MooTools 1.2​​是 个强大的轻量级的JavaScript库,专门为减轻Web中交互性JavaScript开发。在某种程度上,你可以认为MooTools是CSS的扩 展。例如,CSS可以让你在鼠标移上去时发生改变。JavaScript允许你接触更多的时间(点击事件、鼠标悬停事件、键盘事 件……),MooTools让这一切变得非常容易。

另外,MooTools还有各种各样的非常好的扩展,可以让你不只是改变一个元素的属性,还可以让你有”morph“(变形)或者”tween“(补间动画)属性,让你有能力去创建动画效果,就像你在我的导航菜单上看到的一样(Fdream注:原作者的,​​我的首页​​也有)。

这只是一个例子,MooTools可以让你做更多的事情。在接下来的30天里,我们将深入MooTools库,探索从数组(Array)和函数(Function)到Fx.Slide,以及其他捆绑插件的每一个东西。

引用MooTools 1.2

首先,下载并引用MooTools 1.2核心库。

  • 下载​​MooTools 1.2核心库​
  • 把MooTools 1.2核心库上传到你的服务器或者工作区
  • 在你的HTML文档头部head标记之内链接MooTools 1.2核心库

[复制代码]  [保存代码]




(Fdream注:现在MooTools 1.2下载下来后,默认的后缀名是”.txt“,请更改后缀为”.js“。)

在Head标签之内添加Script标签

现在,你已经在你的页面中应用了了MooTools了,你还需要一个地方来写你的代码。这里有两种选择:

1. 把下面的代码写在你的head标签之内,你的代码写在script标记之内:


[复制代码]  [保存代码]




2. 在外部建立一个JavaScript文件,然后在页面头部链接此文件:


[复制代码]  [保存代码]




在这里,你可以使用任何一种方式。我通常把domready事件中调用的方法放在script标记之间,而我的函数放在外部文件中。

把代码放在domready中

MooTools的方法必须在domready事件中调用。


[复制代码]  [保存代码]


  1. window.addEvent('domready', function() {
  2.     exampleFunction();
  3. });


(Fdream注:不完全是这样,但是可以保证你的JavaScript代码尽可能少地出错。顺便说一下domready事件:当页面的HTML代 码(不包括图片、flash等等,只是代码)下载完成时,此时会触发domready事件。这样可以在页面完全下载完成(包括图片、flash等都下载完 成)之前执行你的脚本,从而避免因为一张大图要下很长时间而导致脚本不能执行,从而出现异常。)

把代码放在一个函数中

你仍然可以在domready之外创建你的函数,然后在domready中调用它:


[复制代码]  [保存代码]


  1. var exampleFunction = function() {
  2. 'hello')
  3. };
  4.  
  5. window.addEvent('domready', function() {
  6.     exampleFunction();
  7. });


关于库的详细介绍

在这第一讲中,我们会仔细地看了一下这个库架构的一些关键组件,然后粗略地看一下其他基本功能。

Core(核心)

核心(core)部分包含MooTools库的一些公共函数(Function)来完成一些常见的任务,也加强了许多原有功能(后面会有详细介绍)。下面的内容只是作为MooTools功能的一些例子,并不能替代您阅读​​MooTools的文档​​。

(Fdream注:第一个描述有误,$chk(value)只是检查一个值是不是已经定义或者已经赋值,为0时会返回true,只有undefined或者null时返回false。)

Native(本地对象)

在库的这一部分也包含了一些公共工具,可以让你很容易地操作数组(Array,值或者对象的简单列表)、函数(Function)、数值(Number)、字符串(String)、哈希对象(Hash)和事件(Event)。这里是本地对象中的一些工具特性:

  • 对数组中的每个元素执行一段脚本 - .each();
  • 得到数组中的最后一个元素 - .getLast();
  • 每个x毫秒触发一个事件 - .periodical();
  • 对小数取整 - .round();
  • 把rgb转换为十六进制(HEX) - .rgbToHex();

Class(类)

一个JavaScript类(相对于CSS的类),是一个功能可以重复使用的对象。若要更多地了解MooTools类,你可以看看Valerio的这篇简单介绍的文章(​​MooTools类——怎样使用它们​​​)。我也同时推荐David Walsh的​​MooTools类模板​​。

Element(元素)

MooTools库的Element类提供了一些非常有用的功能。通过这个类,你可以选择DOM元素、操控他们的属性和位置、改变他们的CSS风格。这里是MooTools提供的一些非常强大的处理DOM元素的工具:

  • 选择所有有相同ID或者CSS类名的DOM元素 - .getElements();
  • 给一个元素添加一个CSS类 - .addClass();
  • 取得一个元素的属性值 - .getProperty();
  • 改变一个元素的属性值 - .setProperty();
  • 取得一个元素的样式属性值 - .getStyle();
  • 改变一个元素的样式属性值 - .setStyle();
  • 取得一个元素的坐标位置 - .getCoordinates();

(Fdream注:不推荐在一个页面中有多个相同ID,最好不要出现,在一些浏览器下很容易出现不可预见的错误。)

Utilities(实用工具)

实用工具(Utilities)提供了更多精良的选择逻辑,包括domready事件、可以管理AJAX调用的工具、可以轻松管理cookie的工具,甚至还有”swiff“功能,可以提供JavaScript接口给ActionScript。

FX(效果)

这可能是MooTools最有趣的部分了。通过Fx(效果),你可以创建”Tween“(补间动画)和”morph“(形变动画)效果,从而让你的DOM对象动起来。

  • 在两个样式属性值之间创建一个动画变形(比如让一个div平缓地变大) - var myFx = new Fx.Tween(element);
  • 在多个不同的属性值之间创建一个动画变形(比如在让一个div平缓变大的过程中,让它的边框越来越初,同时变换它的背景颜色) - var myFx = new Fx.Morph(element);

Request(请求)

包含一些可以轻松处理JavaScript XMLHttpRequest(AJAX)功能的工具。为了减轻整个请求/响应(request/response)带来的痛苦,Request对象还有一些专门用来处理HTML和​​JSON对象(JavaScript对象表示法)​​的扩展。

Plugins(插件)

MooTools插件扩展了核心功能,可以轻松地为你的web项目添加高级UI功能。插件列表如下:

  • Fx.Slide
  • Fx.Scroll
  • Fx.Elements
  • Drag
  • Drag.Move
  • Color
  • Group
  • Hash.Cookie
  • Sortables
  • Tips
  • SmoothScroll
  • Slider
  • Scroller
  • Assets
  • Accordion

全局概览

在开始下一讲之前,花一点时间全面地看一下MooTools的文档。可能有些地方你看不太懂,不要管它,尽管通读它,然后吸收那些你懂的。在接下来 的29天中,我们将逐步深入这个库特定的部分,然后把MooTools分解成一些容易消化的小部分,但是首先,一定要好好看一下整个目录

标签:domready,教程,元素,1.2,认识,代码,JavaScript,MooTools
From: https://blog.51cto.com/u_15834343/5975760

相关文章

  • uTools 效率工具集 使用教程
    前言uTools是一款基于electron开发的工具集软件,通过快捷唤醒搜索,直接打开各种功能,非常方便。uToolsuTools是一个极简、插件化、跨平台的现代化桌面软件。通过自由选配丰富......
  • python中的mysql操作教程及实例
    一.数据库在自动化测试中的应用存测试数据有的时候大批量的数据,我们需要存到数据库中,在测试的时候才能用到,测试的时候就从数据库中读取出来。这点是非常重要的!存测试结......
  • 七彩多层水晶字体PHOTOSHOP教程
    多层的七彩水晶字体效果,非常漂亮,这个教程能让我们学到很多新鲜东西,来吧,跟着我开始这个教程900px×900px分辨率为300像素/英寸,颜色为RGB,文件命名为”A”步揍二:用灰色填充背......
  • Xara3D 6.0动画文字软件教程(一)
        我一直很喜欢3D动态字,平时在网上看到一些祝福类的动态字就收藏起来,给朋友送去生日祝福等可以随时派上用场。  ​​董建华​​老太家订做“相濡以沫三十九载”纪......
  • C#的λ表达式树(LambdaExpression)保姆级超详细简单入门教程
    有看过我之前发表过的C#相关文章分享和阅读过我代码的朋友们可能会在我的代码里面经常看到各种各样的λ表达式动态拼接,C#的λ表达式树是一个好东西,也是别的语言学不来......
  • 你有多熟悉和认识自己?
    为了自己想要的东西或目标的实现,你有多努力,你有多拼命,你有多坚持?虽然我不是什么大人物,但今天我所拥有的一切,都是靠自己的努力得来的。我的强颜欢笑、殚精竭虑、逶迤周旋......
  • 【macOS】CrossOver 22 & Steam容器安装教程
    ✨CrossOverCrossOver是一款系统兼容软件。让您可以在Mac和Linux系统上运行Windows应用,不必购买Windows授权,不必重启系统,不必使用虚拟机。通过CrossOver,您可......
  • 麒麟990sp1连接蓝牙教程
    分享一个麒麟990sp1连接蓝牙教程,其他型号请自行确认有蓝牙并有驱动再尝试。华为海思麒麟990芯片的电脑自带蓝牙硬件,银河麒麟SP1操作系统已默认安装好驱动,图形界面设置方法为......
  • Linux认识不学习 bash
    Shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过......
  • 手把手的教你安装PyCharm --Pycharm安装详细教程(一)(非常详细,非常实用)
    简介Jetbrains家族和Pycharm版本划分:pycharm是Jetbrains家族中的一个明星产品,Jetbrains开发了许多好用的编辑器,包括Java编辑器(IntelliJIDEA)、JavaScript编辑器(WebStorm)......