zoukankan      html  css  js  c++  java
  • 方法$.data()和$.('#test').on()的使用

    1、on() 方法的使用

    在选择元素上绑定一个或多个事件的事件处理函数。

    on()方法绑定事件处理程序到当前选定的jQuery对象中的元素。在jQuery 1.7中,.on()方法 提供绑定事件处理程序所需的所有功能。

    参数

    events,[selector],[data],fnV1.7

    events:一个或多个用空格分隔的事件类型和可选的命名空间,如"click"或"keydown.myPlugin" 。

    selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代。如果选择的< null或省略,当它到达选定的元素,事件总是触发。

    data:当一个事件被触发时要传递event.data给事件处理函数。

    fn:该事件被触发时执行的函数。 false 值也可以做一个函数的简写,返回false。

    events-map,[selector],[data]V1.7

    events-map:个用字符串表示的,一个或多个空格分隔的事件类型和可选的命名空间,值表示事件绑定的处理函数。

    selector:一个选择器字符串过滤选定的元素,该选择器的后裔元素将调用处理程序。如果选择是空或被忽略,当它到达选定的元素,事件总是触发。

    data:当一个事件被触发时要传递event.data给事件处理函数。

    示例

    描述:

    Display a paragraph's text in an alert when it is clicked:

    $("p").on("click", function(){
    alert( $(this).text() );
    });

    Pass data to the event handler, which is specified here by name:

    function myHandler(event) {
    alert(event.data.foo);
    }
    $("p").on("click", {foo: "bar"}, myHandler)

    Cancel a form submit action and prevent the event from bubbling up by returning false:

    $("form").on("submit", false)

    Cancel only the default action by using .preventDefault().

    $("form").on("submit", function(event) {
      event.preventDefault();
    });

    Stop submit events from bubbling without preventing form submit, using .stopPropagation().

    $("form").on("submit", function(event) {
      event.stopPropagation();
    });

    2、data()方法

    在元素上存放数据,返回jQuery对象。

    如果jQuery集合指向多个元素,那将在所有元素上设置对应数据。 这个函数不用建立一个新的expando,就能在一个元素上存放任何格式的数据,而不仅仅是字符串。

    V1.4.3 新增用法NEW data(obj) 可传入key-value形式的数据。

    keyStringV1.23

    存储的数据名.

    key,valueString,AnyV1.2.3

    key:存储的数据名

    value:将要存储的任意数据

    objobjectV1.4.3

    一个用于设置数据的键/值对

    data()V1.4.3

    示例

    描述:

    在一个div上存取数据

    HTML 代码:
    <div></div>
    jQuery 代码:
    $("div").data("blah");  // undefined
    $("div").data("blah", "hello");  // blah设置为hello
    $("div").data("blah");  // hello
    $("div").data("blah", 86);  // 设置为86
    $("div").data("blah");  //  86
    $("div").removeData("blah");  //移除blah
    $("div").data("blah");  // undefined

    描述:

    在一个div上存取名/值对数据

    HTML 代码:
    <div></div>
    jQuery 代码:
    $("div").data("test", { first: 16, last: "pizza!" });
    $("div").data("test").first  //16;
    $("div").data("test").last  //pizza!;

    代码Demo:

      <div></div>
       <button id="addData">添加数据</button> 
       <button id="showData">显示数据</button> 
       </br>
       <input /> 
       <script type="text/javascript">
              $(document).ready(function(){
                  // data 操作
                  $('#showData').attr('disabled','disabled');
                  $("#addData").click(function(){
                      $('div').data('setData','Hello World');
                      $('#showData').attr('disabled',false);
                  });
                  
                  $("#showData").click(function(){
                      alert($('div').data('setData'));
                      $('div').html('<h1>'+$('div').data('setData')+'<h1></br>');
                  });
                  // on函数使用
                  var defdata = {show:"this is very interesting !"};
                  $('input').on("click",defdata,function(e){
                    $('input').attr("value",$('div').data('setData'));
                    alert(e.data.show);
                  });
                  
              });
        </script>
    View Code


  • 相关阅读:
    bzoj3997 [TJOI2015]组合数学
    bzoj1143 [CTSC2008]祭祀river
    bzoj 2208 [Jsoi2010]连通数
    bzoj3713 [PA2014]Iloczyn
    bzoj1054 [HAOI2008]移动玩具
    习题6-5 使用函数验证哥德巴赫猜想(20 分)
    习题6-4 使用函数输出指定范围内的Fibonacci数(20 分)
    习题6-3 使用函数输出指定范围内的完数(20 分)
    习题6-2 使用函数求特殊a串数列和(20 分)
    分类统计字符个数(15 分)
  • 原文地址:https://www.cnblogs.com/huaxingtianxia/p/5497790.html
Copyright © 2011-2022 走看看