一、事件:
 1、模式触发事件:
  ①DOM:elem.onXXX();只能触发直接用onXXX绑定的事件处理函数;用addEventistener添加的事件监听无法模拟出发触发;
  ②jQuery:$(...).trigger("事件名");可简写:$(...).事件名;
 2、页面加载后执行:
  ①jQuery:$(document).ready(function(){...});底层事件——DOM中的ondocumentcontentloaded,只要DOM树加载完成,js执行完毕就触发;
  ②DOM:window.onload=function(){...};底层——必须等到html,css,jsimg全部加载完成才会触发;
  ③优化:将原本在load之后执行的任务(事件绑定,修改DOM树),提前到ready之后执行,可缩短页面加载事件;将script放在body的结尾可实现DOM加载后立刻执行;
 3、hover事件:其实是mouseover和mouseout的合体,须绑定两个事件处理函数;    当须同时相应mouseover和mouseout时,可简写为hover;
二、动画:
 1、简化版动画函数:显示/隐藏:$(...).show(); $(...).hide();    $(...).toggle();
  * 无参数的show()/hide()使用的是display属性;瞬间显示和隐藏;
  动画参数:speed:fast/normal/slow;或者使用毫秒数自定义动画时长;
  动画速度变化参数:easing:linear/swing;
  伸缩:slideUp()、slideDown()、slideToggle();
  淡入淡出:fadeIn()、fadeOut()、fadeToggle();
 2、万能动画函数:animate():可对数值类型的CSS样式执行定时器动画;
  使用:$(...).animate(params,speed,easing,fn);
   其中:params:所有变化的css属性目标值;speed:动画持续时间/速度;easing:速度变化效果;fn:动画结束后自动调用的回掉函数;
  排队:多个动画顺序执行;
   $(...).animate({属性1:值1,...},ms).animate({属性2:值2,...},ms);
  并发:多个动画同时执行;
   $(...).animate({属性1:值1,属性2:值2},ms);
三、类数组操作:
 1、.each(function(i){i->当前元素的下标;this->当前元素});
  each为jQuery第三方定义类数组对象的方法;
  forEach是原生js中Array类型的方法;
  使用:$("要查找的元素").index("所有元素");返回要查找的元素在所有元素中的下标位置;
 2、jQuery UI:
  ①Effects:动画效果;
   addClass()/removeClass()/toggleClass():默认没动画;
   show/hide/toggle:扩展了动画效果;
   color animation:实现颜色动画;
   $(...).animate():支持颜色动画;
   $(...).toggle(Effecta,speed)中:effects参数:
    blind(遮蔽)、bounce(弹跳)、clip(缩短)、puff(膨胀)、explode(爆炸)、fold(折叠)、highlight(高亮)、drop(丢弃)、pulsate(心跳)、shake(震动)、size、slide
  ②Interactions:交互
   拖曳:$(...).dragglable();API会悄悄为元素添加class;
   可选中:$(...).selectable();须手动定义同名样式类ui-selected的样式;
   可排序:$(...).sortable();
  ③Widget:小部件;
   a、Accordion:手风琴部件,引入jquery-ui.css,html:父元素>标题+内容div,js:$(父元素).accordion();
   b、AutoComplete:自动完成;html:input文本框,js:保存所有备选项的数组——$(文本框).autocomplete({source:数组});
   c、datepicker:日期选择框;html:input文本框,js:$(文本框).datepicker({dateFormat:"yyyy年mm月dd日"});*H5中不能修改样式且兼容性;
   d、dialog:对话框;html:定义外层元素,包含提示信息(须定义title属性,title属性会出现在对话框左上角),js:$(“外层元素”).dialog();*不带参数的dialog只负责将容器变成对话框,不控制显示与否;
    配置:$(...).dialog({
     autoOpen:false,//默认隐藏
     button:[
     {text:'文本',click:function(){this->dialog}}//按钮
     ....]
    });
    打开:$(...).dialog("open");
    关闭:$(...).dialog("close");
   e、按钮部件:$(button/input/a).button();
   f、tabs:标签页:html:父级div>标签页ul>li>a href="#id";*(内容页div的#id匹配);js:$(父元素).tabs();
   g、tooltip:工具提示;必须应用到document上;

jQuery_03之事件、动画、类数组操作的更多相关文章

  1. JQUERY-事件-动画-类数组对象-添加自定义API

    正课: 1. 事件: 2. 动画: 3. 类数组对象操作: 4. 添加自定义API: 1. 事件: 1. 页面加载后执行: 2个时机 1. DOM内容加载完成: 仅包括html, js DOMCont ...

  2. 前端(十八)—— jQuery高级操作:选择器、文本属性与类、事件、文档操作、动画、结构关系

    JQ选择器.文本属性与类.事件.文档操作.动画.结构关系 可参考jQuery的API文档 一.选择器 1.css语法匹配 标签 | 类 | id | 交集 群组 | 后代 | 兄弟 伪类 | 属性 $ ...

  3. 第三章 JQuery: HelloWorld--常见方法--css--选择器--筛选器--属性--效果--事件--数组操作--字符串操作--对象转换

    1.jQuery简介 为了简化JavaScript 的开发, 一些JavsScript 库诞生了. JavaScript库封装了很多预定义的对象和实用函数.能帮助使用者建立有高难度交互的页面, 并且兼 ...

  4. jQuery 选择器 筛选器 样式操作 文本操作 属性操作 文档处理 事件 动画效果 插件 each、data、Ajax

    jQuery jQuery介绍 1.jQuery是一个轻量级的.兼容多浏览器的JavaScript库. 2.jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方 ...

  5. JQuery操作类数组的工具方法

    JQuery学习之操作类数组的工具方法 在很多时候,JQuery的$()函数都返回一个类似数据的JQuery对象,例如$('div')将返回div里面的所有div元素包装的JQuery对象.在这中情况 ...

  6. C++走向远洋——38(用对象数组操作长方柱类)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:changfangzhu.cpp * 作者:常轩 * 微信公众号 ...

  7. php 数组操作类(整合 给意见)

    数组操作函数整理: /* 将一个二维数组按照指定字段的值分组 * * @param array $arr * @param string $keyField * * @return array */ ...

  8. 实现类数组转化成数组(DOM 操作获得的返回元素值是一个类数组)

    目标 实现类数组转化成数组 实例 链接地址 使用方法 const foo = document.querySelectorAll('.result') //链接地址输入控制台输入这行代码 const ...

  9. Jquery数组操作技巧

    Jquery对数组的操作技巧. 1. $.each(array, [callback]) 遍历[常用]  解释: 不同于例遍 jQuery 对象的 $.each() 方法,此方法可用于例遍任何对象(不 ...

随机推荐

  1. java线程小结3

    1. 多线程概述 要实现多线程可以通过继承Thread和实现Runnable接口.不过这两者之间存在一些区别.其中最重要的区别就是,如果一个类继承Thread类,则不适合于多个线程共享资源,而实现了R ...

  2. PHP-Mysqli扩展库的预编译

    (1)预编译的好处 假如要执行100条类似的sql语句,每一次执行,在MySQL端都会进行一次编译,效率很低.提高效率的方法就是--减少编译的次数. 先制造一个sql语句的模板,在MySQL端预先编译 ...

  3. 【开发环境】JAVA 环境变量批处理

    @echo off set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environmen ...

  4. 如何编写高效的jQuery代码

    jQuery的编写原则: 一.不要过度使用jQuery 1. jQuery速度再快,也无法与原生的javascript方法相比,而且建立的jQuery对象包含的信息量很庞大.所以有原生方法可以使用的场 ...

  5. 51NOD算法马拉松11 B君的竞技场

    传送门 这题我在比赛的时候竟然没有想出来,真是-- 这道题我们可以想一想怎么搞定获胜的概率p. 我们发现再怎么这个p都是搞不了的.所以我们可以积一下分,然后就可以不用去管p了.我们要做的就是求出一个关 ...

  6. 使用ajax预加载图片

    使用Ajax 上面所给出的方法似乎不够酷,那现在来看一个使用Ajax实现图片预加载的方法.该方法利用DOM,不仅仅预加载图片,还会预加载CSS.JavaScript等相关的东西.使用Ajax,比直接使 ...

  7. mysql5.7压缩包版安装-来自百度经验

    解压缩        将下载到的文件解压缩到自己喜欢的位置,例如我自己的位置是C:\mysql57 2 添加环境变量 右键计算机->属性->高级系统设置->环境变量:在系统变量里添加 ...

  8. debian/ubuntu 下ISE安装

    1. planAhead无法打开的问题 原因: debian中使用dash,跟planAhead使用的bash略有不同 解决: 将/bin/sh 的链接从dash改为bash 2. FPGA Edit ...

  9. Autolayout(VFL)

    Autolayout(VFL) 1.NSLayoutConstraint + (NSArray *)constraintsWithVisualFormat:(NSString *)format opt ...

  10. How to Install JAVA 8 (JDK/JRE 8u111) on Debian 8 & 7 via PPA

    Oracle JAVA 8 Stable release has been released on Mar,18 2014 and available to download and install. ...