zoukankan      html  css  js  c++  java
  • jQuery 选择器 与 事件

    jQuery 选择器


    jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。


    jQuery 选择器

    jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。

    jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它基于已经存在的 CSS 选择器,除此之外,它还有一些自定义的选择器。

    jQuery 中所有选择器都以美元符号开头:$()。


    元素选择器

    jQuery 元素选择器基于元素名选取元素。

    在页面中选取所有 <p> 元素:

    $("p")

    实例

    用户点击按钮后,所有 <p> 元素都隐藏:

    实例

    $(document).ready(function(){ $("button").click(function(){ $("p").hide(); }); });



    #id 选择器

    jQuery #id 选择器通过 HTML 元素的 id 属性选取指定的元素。

    页面中元素的 id 应该是唯一的,所以您要在页面中选取唯一的元素需要通过 #id 选择器。

    通过 id 选取元素语法如下:

    $("#test")

    实例

    当用户点击按钮后,有 id="test" 属性的元素将被隐藏:

    实例

    $(document).ready(function(){ $("button").click(function(){ $("#test").hide(); }); });



    .class 选择器

    jQuery 类选择器可以通过指定的 class 查找元素。

    语法如下:

    $(".test")

    实例

    用户点击按钮后所有带有 class="test" 属性的元素都隐藏:

    实例

    $(document).ready(function(){ $("button").click(function(){ $(".test").hide(); }); });



    更多实例

    语法描述实例
    $("*") 选取所有元素 在线实例
    $(this) 选取当前 HTML 元素 在线实例
    $("p.intro") 选取 class 为 intro 的 <p> 元素 在线实例
    $("p:first") 选取第一个 <p> 元素 在线实例
    $("ul li:first") 选取第一个 <ul> 元素的第一个 <li> 元素 在线实例
    $("ul li:first-child") 选取每个 <ul> 元素的第一个 <li> 元素 在线实例
    $("[href]") 选取带有 href 属性的元素 在线实例
    $("a[target='_blank']") 选取所有 target 属性值等于 "_blank" 的 <a> 元素 在线实例
    $("a[target!='_blank']") 选取所有 target 属性值不等于 "_blank" 的 <a> 元素 在线实例
    $(":button") 选取所有 type="button" 的 <input> 元素 和 <button> 元素 在线实例
    $("tr:even") 选取偶数位置的 <tr> 元素 在线实例
    $("tr:odd") 选取奇数位置的 <tr> 元素 在线实例

    独立文件中使用 jQuery 函数

    如果您的网站包含许多页面,并且您希望您的 jQuery 函数易于维护,那么请把您的 jQuery 函数放到独立的 .js 文件中。

    当我们在教程中演示 jQuery 时,会将函数直接添加到 <head> 部分中。不过,把它们放到一个单独的文件中会更好,就像这样(通过 src 属性来引用文件):

    实例

    <head> <script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js"> </script> <script src="my_jquery_functions.js"></script> </head>

     

    通过 $(":button") 可以选取所有 type="button" 的 <input> 元素 和 <button> 元素,如果去掉冒号,$("button")只能获取 <button> 元素。

    <p id="test1">点进这里测试  <b>button</b></p>
    <p id="test2">点进这里测试 <b>:button</b></p>
    <button>Button 按钮</button>
    <input type="button" value="Input 按钮">




    关于 : 和 [] 这两个符号的理解

    :可以理解为种类的意思,如:p:firstp 的种类为第一个。

    [] 很自然的可以理解为属性的意思,如:[href] 选取带有 href 属性的元素。

    jQuery 事件


    jQuery 是为事件处理特别设计的。


    什么是事件?

    页面对不同访问者的响应叫做事件。

    事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。

    实例:

    • 在元素上移动鼠标。
    • 选取单选按钮
    • 点击元素

    在事件中经常使用术语"触发"(或"激发")例如: "当您按下按键时触发 keypress 事件"。

    常见 DOM 事件:

    鼠标事件键盘事件表单事件文档/窗口事件
    click keypress submit load
    dblclick keydown change resize
    mouseenter keyup focus scroll
    mouseleave   blur unload

     


    jQuery 事件方法语法

    在 jQuery 中,大多数 DOM 事件都有一个等效的 jQuery 方法。

    页面中指定一个点击事件:

    $("p").click();

    下一步是定义什么时间触发事件。您可以通过一个事件函数实现:

    $("p").click(function(){ // 动作触发后执行的代码!! });



    常用的 jQuery 事件方法

    $(document).ready()

    $(document).ready() 方法允许我们在文档完全加载完后执行函数。该事件方法在 jQuery 语法 章节中已经提到过。

    click()

    click() 方法是当按钮点击事件被触发时会调用一个函数。

    该函数在用户点击 HTML 元素时执行。

    在下面的实例中,当点击事件在某个 <p> 元素上触发时,隐藏当前的 <p> 元素:

    实例

    $("p").click(function(){ $(this).hide(); });


    dblclick()

    当双击元素时,会发生 dblclick 事件。

    dblclick() 方法触发 dblclick 事件,或规定当发生 dblclick 事件时运行的函数:

    实例

    $("p").dblclick(function(){ $(this).hide(); });


    mouseenter()

    当鼠标指针穿过元素时,会发生 mouseenter 事件。

    mouseenter() 方法触发 mouseenter 事件,或规定当发生 mouseenter 事件时运行的函数:

    实例

    $("#p1").mouseenter(function(){ alert('您的鼠标移到了 id="p1" 的元素上!'); });


    mouseleave()

    当鼠标指针离开元素时,会发生 mouseleave 事件。

    mouseleave() 方法触发 mouseleave 事件,或规定当发生 mouseleave 事件时运行的函数:

    实例

    $("#p1").mouseleave(function(){ alert("再见,您的鼠标离开了该段落。"); });


    mousedown()

    当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。

    mousedown() 方法触发 mousedown 事件,或规定当发生 mousedown 事件时运行的函数:

    实例

    $("#p1").mousedown(function(){ alert("鼠标在该段落上按下!"); });


    mouseup()

    当在元素上松开鼠标按钮时,会发生 mouseup 事件。

    mouseup() 方法触发 mouseup 事件,或规定当发生 mouseup 事件时运行的函数:

    实例

    $("#p1").mouseup(function(){ alert("鼠标在段落上松开。"); });


    hover()

    hover()方法用于模拟光标悬停事件。

    当鼠标移动到元素上时,会触发指定的第一个函数(mouseenter);当鼠标移出这个元素时,会触发指定的第二个函数(mouseleave)。

    实例

    $("#p1").hover( function(){ alert("你进入了 p1!"); }, function(){ alert("拜拜! 现在你离开了 p1!"); } );


    focus()

    当元素获得焦点时,发生 focus 事件。

    当通过鼠标点击选中元素或通过 tab 键定位到元素时,该元素就会获得焦点。

    focus() 方法触发 focus 事件,或规定当发生 focus 事件时运行的函数:

    实例

    $("input").focus(function(){ $(this).css("background-color","#cccccc"); });


    blur()

    当元素失去焦点时,发生 blur 事件。

    blur() 方法触发 blur 事件,或规定当发生 blur 事件时运行的函数:

    实例

    $("input").blur(function(){ $(this).css("background-color","#ffffff"); });
     
     
     
     
     
     
     
     
     
     
     
     
     

    一.keypress,keydown,keyup的区别:

    •  1.keydown:在键盘上按下某键时发生,一直按着则会不断触发(opera浏览器除外), 它返回的是键盘代码;
    •  2.keypress:在键盘上按下一个按键,并产生一个字符时发生, 返回ASCII码。注意: shift、alt、ctrl等键按下并不会产生字符,所以监听无效 ,换句话说, 只有按下能在屏幕上输出字符的按键时keypress事件才会触发。若一直按着某按键则会不断触发。
    •  3.keyup:用户松开某一个按键时触发, 与keydown相对, 返回键盘代码.

    二.两种常用用法举例

    案例1:获取按键代码或字符的ASCII码

    $(window).keydown( function(event){
       // 通过event.whitch可以拿到按键代码.  如果是keypress事件中,则拿到ASCII码.
    } );

    案例2:传递数据给事件处理函数

    语法:

    jQueryObject.keydown( [[ data ,]  handler ] );
    •  data: 通过event.data传递给事件处理函数的任意数据;
    •  handler: 指定的事件处理函数;

    举例:

    // 只允许按下的字母键生效, 65~90是所有小写字母的键盘代码范围.
    var validKeys = { start: 65, end: 90  };
    $("#keys").keydown( validKeys, function(event){
        var keys = event.data;  //拿到validKeys对象.
        return event.which >= keys.start && event.which <= keys.end;
    } );
  • 相关阅读:
    MATLAB 之 App designer 小白学习(四)
    MATLAB 之 APP DESIGNER 学习(三)
    MATLAB 之 App designer 小白学习(二)
    MATLAB 之 App designer 小白学习(一)
    激光烧蚀 @有机聚合物
    激光驱动巨量转移工艺
    基于神经网络的函数逼近
    单片机复位电路仿真分析
    基于Python的3R机器人运动仿真
    基于MATLAB的单级倒立摆仿真
  • 原文地址:https://www.cnblogs.com/mrwuwu/p/8999675.html
Copyright © 2011-2022 走看看