zoukankan      html  css  js  c++  java
  • JavaScript库 Sparrow v0.1.1发布,一个类miniJQ的lib

    零零碎碎的折腾俩个礼拜终于算是完成了这个lib,名为Sparrow(麻雀),目前压缩版15k,虽没jq那么强大,但正如其名五脏俱全,一般的应用都能应付了....

    Sparrow参考了网上的一些文章及其他js框架,如果涉及版权问题请及时告知,以便处理...

    至于这个lib的特点一个类miniJQ的库大家应该都明白的差不多了...(神马跨浏览器啊,链式调用啊,write less do more等)

    下面看看它到底都能干什么  

    Sparrow以S或$命名调用,首先就是熟悉的DomReady

    S(function(){ .... });

    其次是简单的选择器支持

    #id,#id tag,#id .cls,tag,.cls,tag.cls

    例如S(#id tag) 可以打印查看S.log(S(cls));

    事件的绑定

    S(tag).on(type,fn)也可以用bind

    例如 S('li').on('click',function(){ alert(S(this).text());  })

    快捷事件

    S('li').click(function(){....});  

    触发事件

    S('li').click();

    事件的删除

    S(tag).off(type) 指定type删除此种类型的事件,不指定则删除全部

    事件委托

    S(#id).delegate(selector, type, handler)

    如S("#ul").delegate('li','click',function(){....})

    委托的删除

    S("#ul").undelegate(type, selector)

    自定义事件的订阅发布

    S.subscribe('myclick',fn)

    S.publish('myclick')

    AJAX的支持

    S.ajax(url,data)或S.ajax({...})

    如S.ajax({url:xxx,type:'GET',dataType:'JSON',}).then(function(){ alert('success') },function(){  alert('err') });

    结果是可thenable的如S.ajax(url,data).then(...).then(...)里面可再次ajax

    如S.ajax({url:xxx,type:'GET',dataType:'html',}).then(function(res1){

       return S.ajax({url:xxx,type:'GET',dataType:'html',}).then(function(res2){

        var a=res1+res2;

        return a;

      })

    },function(b){  

      alert(b)

    });

    如果then中有返回值,则下一个then的参数值为此返回值,如果没有返回则为原来获得的结果

    类似的还有S.when(S.ajax(...),S.ajax(...),function(arr){

    //在ajax全部完成时触发,数组arr的结果顺序为写入ajax的顺序 如arr[0]返回第一个ajax的结果,

    })

    对Dom的支持

    S(tag).css('display','')也可设置多个S(tag).css({...})

    获取S(tag).css('display');

    隐藏显示的快捷设置S(tag).show() S(tag).hide()

    类似的

    .attr .data .position .addClass .hasClass .append .after .remove .html...等等..

    辅助方法

    S.isFunction(obj),S.browser,S.JSON...

    还有什么等你去发现...

    Sparrow 90%接口与JQ一样,使用时可以用$,如果过程中不能满足需要可直接替换为JQ库

    注 此版本不包含动画功能,bug的存在在所难免,欢迎指正..

    QQ交流群22213453

    项目地址https://github.com/ygm125/Sparrow

  • 相关阅读:
    微软Office团队做产品的十大经验教训 沧海
    Definitio of Business Intelligence 沧海
    爱购家园,轻松工作,轻松生活 沧海
    SAAS概述 沧海
    一定要做自己最内行的东西,一定要在自己本身的职位上来提升自己 沧海
    Android应用的构成 沧海
    管理的最高境界,就是激发每个员工的潜力。让每个员工都觉得自己的工作是一份事业。 沧海
    The life cycle of a typical project 一个典型的项目生命周期 沧海
    印度英语的特点归纳 沧海
    3G时代的移动业务赢利模式分析 沧海
  • 原文地址:https://www.cnblogs.com/ygm125/p/2617572.html
Copyright © 2011-2022 走看看