美文网首页
数组转化为JSON 、绑定多个事件、队列

数组转化为JSON 、绑定多个事件、队列

作者: 潇潇翔子 | 来源:发表于2018-09-17 15:17 被阅读24次

    jQuery 中如何将数组转化为 JSON 字符串,然后再转化回来?

    // 通过原生 JSON.stringify/JSON.parse 扩展 jQuery 实现
     $.array2json = function(array) {
        return JSON.stringify(array);
     }
    
     $.json2array = function(array) {
        // $.parseJSON(array); // 3.0 开始,已过时
        return JSON.parse(array);
     }
    
     // 调用
     var json = $.array2json(['a', 'b', 'c']);
     var array = $.json2array(json);
    

    jQuery 一个对象可以同时绑定多个事件,这是如何实现的?

      $("#btn").on("mouseover mouseout", func);
    
      $("#btn").on({
          mouseover: func1,
          mouseout: func2,
          click: func3
      });
    

    jQuery 的队列是如何实现的?队列可以用在哪些地方?

    jQuery 核心中有一组队列控制方法,由 queue()/dequeue()/clearQueue() 三个方法组成。
    主要应用于 animate(),ajax,其他要按时间顺序执行的事件中

    var func1 = function(){alert('事件1');}
    var func2 = function(){alert('事件2');}
    var func3 = function(){alert('事件3');}
    var func4 = function(){alert('事件4');}
    
    // 入栈队列事件
    $('#box').queue("queue1", func1);  // push func1 to queue1
    $('#box').queue("queue1", func2);  // push func2 to queue1
    
    // 替换队列事件
    $('#box').queue("queue1", []);  // delete queue1 with empty array
    $('#box').queue("queue1", [func3, func4]);  // replace queue1
    
    // 获取队列事件(返回一个函数数组)
    $('#box').queue("queue1");  // [func3(), func4()]
    
    // 出栈队列事件并执行
    $('#box').dequeue("queue1"); // return func3 and do func3
    $('#box').dequeue("queue1"); // return func4 and do func4
    
    // 清空整个队列
    $('#box').clearQueue("queue1"); // delete queue1 with clearQueue
    

    相关文章

      网友评论

          本文标题:数组转化为JSON 、绑定多个事件、队列

          本文链接:https://www.haomeiwen.com/subject/ioglnftx.html