一起学习网 一起学习网


使用jQuery获取data-的自定义属性

网络编程 使用jQuery获取data-的自定义属性 06-21

废话少说,先上代码

jQuery.fn.dataset = function(attr, val) {
    // 获取数据集
    if (arguments.length == 0) {
      var dataset = {};
      jQuery(this).eq(0).each(function() {
        var attrs = this.attributes;
        for (var i = 0, l = attrs.length; i < l; i++) {
          var attr = attrs[i];
          if (/^data-/i.test(attr.name)) {
            dataset[decode(encode(attr.name.substring(5)))] = autobox(attr.value);
            if (decode(encode(attr.name.substring(5))) == "path") {
              dataset[decode(encode(attr.name.substring(5)))] = attr.value != null ? String(attr.value) : null;
            }
            if (decode(encode(attr.name.substring(5))) == "name") {
              dataset[decode(encode(attr.name.substring(5)))] = attr.value != null ? String(attr.value) : null;
            }
          }
        }
      });
      return dataset;
    }

    // 返回指定数据
    if (arguments.length == 1 && typeof attr != 'object') {
      if(encode(attr) == "data-path"){
        return this.attr(encode(attr));
      }
      return autobox(this.attr(encode(attr)));
    }

    // 设置数据集
    var dataset = attr;
    if (typeof attr != 'object') {
      dataset = {};
      dataset[attr] = String(val);
    }
    var tmp = {};
    jQuery.each(dataset, function(k, v) {
      tmp[encode(k)] = autobox(v);
    });
    return this.attr(tmp);
  };

通过jQuery制作组件,可以轻松获取到我们data-的自定义属性,也可以给data-属性来赋值。

获取:

$("div").dataset("name") //获取data-name的值

赋值:

$("div").dataset("name","Tezml") //给data-name这个属性赋值为Tezml

jQuery+CSS3实现3D立方体旋转效果
本文介绍了如何利用jQuery+CSS3实现3D立方体旋转效果,先看一看效果图:切换图片过程中,图片进行旋转:HTML结构3D图片画廊的图片列表和导航按钮分别

jquery事件的ready()方法使用详解
页面初始化中,用的较多的就是$(document).ready(function(){//代码});或$(window).load(function(){//代码});他们的区别就是,ready是在DOM的结构加载完后就触发,load是

jquery原理以及学习技巧介绍
对于JQuery,想必大家都很熟悉。目前,很多web项目,在实施的过程中,考虑到各浏览器原生JSAPI的兼容性,大都会选用JQuery或类似于JQuery这样的框架来进


编辑:一起学习网

标签:赋值,立方体,图片,属性,代码