• jQuery学习一


    1.jQuery 是一个 JavaScript 库

    jQuery 库包含以下特性:

    • HTML 元素选取
    • HTML 元素操作
    • CSS 操作
    • HTML 事件函数
    • JavaScript 特效和动画
    • HTML DOM 遍历和修改
    • AJAX
    • Utilities

    2.jQuery 语法

    jQuery 语法是为 HTML 元素的选取编制的,可以对元素执行某些操作。

    基础语法是:$(selector).action()

    • 美元符号定义 jQuery
    • 选择符(selector)“查询”和“查找” HTML 元素
    • jQuery 的 action() 执行对元素的操作

    示例

    $(this).hide() - 隐藏当前元素

    $("p").hide() - 隐藏所有段落

    $(".test").hide() - 隐藏所有 class="test" 的所有元素

    $("#test").hide() - 隐藏所有 id="test" 的元素

    文档就绪函数

    您也许已经注意到在我们的实例中的所有 jQuery 函数位于一个 document ready 函数中:

    $(document).ready(function(){
    
    --- jQuery functions go here ----
    
    });
    

    这是为了防止文档在完全加载(就绪)之前运行 jQuery 代码。

    如果在文档没有完全加载之前就运行函数,操作可能失败。下面是两个具体的例子:

    • 试图隐藏一个不存在的元素
    • 获得未完全加载的图像的大小

    3.jQuery 元素选择器

    jQuery 使用 CSS 选择器来选取 HTML 元素。

    $("p") 选取 <p> 元素。

    $("p.intro") 选取所有 class="intro" 的 <p> 元素。

    $("p#demo") 选取所有 id="demo" 的 <p> 元素。

    4.

    jQuery 名称冲突

    jQuery 使用 $ 符号作为 jQuery 的简介方式。

    某些其他 JavaScript 库中的函数(比如 Prototype)同样使用 $ 符号。

    jQuery 使用名为 noConflict() 的方法来解决该问题。

    var jq=jQuery.noConflict(),帮助您使用自己的名称(比如 jq)来代替 $ 符号。

    5jQuery 参考手册 - 事件

    方法描述
    bind() 向匹配元素附加一个或更多事件处理器
    blur() 触发、或将函数绑定到指定元素的 blur 事件
    change() 触发、或将函数绑定到指定元素的 change 事件
    click() 触发、或将函数绑定到指定元素的 click 事件
    dblclick() 触发、或将函数绑定到指定元素的 double click 事件
    delegate() 向匹配元素的当前或未来的子元素附加一个或多个事件处理器
    die() 移除所有通过 live() 函数添加的事件处理程序。
    error() 触发、或将函数绑定到指定元素的 error 事件
    event.isDefaultPrevented() 返回 event 对象上是否调用了 event.preventDefault()。
    event.pageX 相对于文档左边缘的鼠标位置。
    event.pageY 相对于文档上边缘的鼠标位置。
    event.preventDefault() 阻止事件的默认动作。
    event.result 包含由被指定事件触发的事件处理器返回的最后一个值。
    event.target 触发该事件的 DOM 元素。
    event.timeStamp 该属性返回从 1970 年 1 月 1 日到事件发生时的毫秒数。
    event.type 描述事件的类型。
    event.which 指示按了哪个键或按钮。
    focus() 触发、或将函数绑定到指定元素的 focus 事件
    keydown() 触发、或将函数绑定到指定元素的 key down 事件
    keypress() 触发、或将函数绑定到指定元素的 key press 事件
    keyup() 触发、或将函数绑定到指定元素的 key up 事件
    live() 为当前或未来的匹配元素添加一个或多个事件处理器
    load() 触发、或将函数绑定到指定元素的 load 事件
    mousedown() 触发、或将函数绑定到指定元素的 mouse down 事件
    mouseenter() 触发、或将函数绑定到指定元素的 mouse enter 事件
    mouseleave() 触发、或将函数绑定到指定元素的 mouse leave 事件
    mousemove() 触发、或将函数绑定到指定元素的 mouse move 事件
    mouseout() 触发、或将函数绑定到指定元素的 mouse out 事件
    mouseover() 触发、或将函数绑定到指定元素的 mouse over 事件
    mouseup() 触发、或将函数绑定到指定元素的 mouse up 事件
    one() 向匹配元素添加事件处理器。每个元素只能触发一次该处理器。
    ready() 文档就绪事件(当 HTML 文档就绪可用时)
    resize() 触发、或将函数绑定到指定元素的 resize 事件
    scroll() 触发、或将函数绑定到指定元素的 scroll 事件
    select() 触发、或将函数绑定到指定元素的 select 事件
    submit() 触发、或将函数绑定到指定元素的 submit 事件
    toggle() 绑定两个或多个事件处理器函数,当发生轮流的 click 事件时执行。
    trigger() 所有匹配元素的指定事件
    triggerHandler() 第一个被匹配元素的指定事件
    unbind() 从匹配元素移除一个被添加的事件处理器
    undelegate() 从匹配元素移除一个被添加的事件处理器,现在或将来
    unload() 触发、或将函数绑定到指定元素的 unload 事件

     6.jQuery 效果函数

    方法描述
    animate() 对被选元素应用“自定义”的动画
    clearQueue() 对被选元素移除所有排队的函数(仍未运行的)
    delay() 对被选元素的所有排队函数(仍未运行)设置延迟
    dequeue() 运行被选元素的下一个排队函数
    fadeIn() 逐渐改变被选元素的不透明度,从隐藏到可见
    fadeOut() 逐渐改变被选元素的不透明度,从可见到隐藏
    fadeTo() 把被选元素逐渐改变至给定的不透明度
    hide() 隐藏被选的元素
    queue() 显示被选元素的排队函数
    show() 显示被选的元素
    slideDown() 通过调整高度来滑动显示被选元素
    slideToggle() 对被选元素进行滑动隐藏和滑动显示的切换
    slideUp() 通过调整高度来滑动隐藏被选元素
    stop() 停止在被选元素上运行动画
    toggle() 对被选元素进行隐藏和显示的切换

     示例代码:

     $("#feng").click(function () {
            if ($("#feng").val() == "展开") {//获取值
                $("#hel").hide(1000);
                $("#feng").val("收起");//赋值
            }
            else {
                $("#hel").show(1000);
                $("#feng").val("展开");
            }
        });

    显示隐藏:hide();show();toggle();

    淡入淡出:fadeIn();fadeOut();fadeToggle();

    滑动显示:slideDown();slideUp();slideToggle();

    动画:animate();

    语法:

    $(selector).animate({params},speed,callback);必需的 params 参数定义形成动画的 CSS 属性。

    jQuery animate() - 使用预定义的值

    您甚至可以把属性的动画值设置为 "show"、"hide" 或 "toggle":

    实例

    $("button").click(function(){
      $("div").animate({
        height:'toggle'
      });
    });

    jQuery animate() - 使用队列功能

    默认地,jQuery 提供针对动画的队列功能。

    这意味着如果您在彼此之后编写多个 animate() 调用,jQuery 会创建包含这些方法调用的“内部”队列。然后逐一运行这些 animate 调用。

    实例 1

    隐藏,如果您希望在彼此之后执行不同的动画,那么我们要利用队列功能:

    $("button").click(function(){
      var div=$("div");
      div.animate({height:'300px',opacity:'0.4'},"slow");
      div.animate({'300px',opacity:'0.8'},"slow");
      div.animate({height:'100px',opacity:'0.4'},"slow");
      div.animate({'100px',opacity:'0.8'},"slow");
    });
    停止动画stop(带参数或不带参数);

    stop();"停止" 按钮会停止当前活动的动画,但允许已排队的动画向前执行。

    stop(true);"停止所有" 按钮停止当前活动的动画,并清空动画队列;因此元素上的所有动画都会停止。

    stop(true,true);"停止但要完成" 会立即完成当前活动的动画,然后停下来。

    语法

    $(selector).stop(stopAll,goToEnd);

    可选的 stopAll 参数规定是否应该清除动画队列。默认是 false,即仅停止活动的动画,允许任何排入队列的动画向后执行。

    可选的 goToEnd 参数规定是否立即完成当前动画。默认是 false。

    因此,默认地,stop() 会清除在被选元素上指定的当前动画。

    jQuery Callback 函数       Callback 函数在当前动画 100% 完成之后执行。

    jQuery - Chaining 技术    您可以把动作/方法链接起来。Chaining 允许我们在一条语句中允许多个 jQuery 方法(在相同的元素上)。

    示例:$("#p1").css("color","red").slideUp(2000).slideDown(2000);

  • 相关阅读:
    TensorFlow简易学习[3]:实现神经网络
    TensorFlow简易学习[2]:实现线性回归
    TensorFlow简易学习[1]:基本概念和操作示例
    [转]概念:结构化数据、半结构化数据、非结构数据
    SIP简介
    Flask
    vue项目中的常见问题
    为什么java中用枚举实现单例模式会更好
    20道Java面试必考题
    Java面试题(二)
  • 原文地址:https://www.cnblogs.com/skyfeng-826/p/4898084.html
Copyright © 2020-2023  润新知