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

  • 相关阅读:
    JS与Android交互
    win10 死机 无响应
    clientdataset.open 报错 Name not unique in this context
    WIN10 常用bug解决办法
    关闭win10 自动更新 及蓝屏解决办法
    delphi 调用Webservice 引入wsdl 报错 document empty
    C# 类库调试 启动外部程序无法调试
    ADOQuery.Parameters: Property Parameters does not exist
    delphi android 自动升级
    不死僵尸木马lpt7.asp.asp与lpt5.cnzzz.asp的删除方法
  • 原文地址:https://www.cnblogs.com/ygm125/p/2617572.html
Copyright © 2011-2022 走看看