专为webkit内核而生的javascript库mango正式发布
专为webkit内核而生的javascript库mango正式发布
Mango(芒果) javascript库
求fork
https://github.com/willian12345/mango
什么是mango
mango是以webkit为内核的浏览器专门编写的javascript库, api高仿jquery api
mango在BSD协议下开源发布
为什么会写mango.js
因为webkit,现在越来越多的公司产品是用native程序包一个webkit内核用html5 来实现UI交互界面,而交互界面javascript又扮演着至关重要的角色。 Jquery几乎成了大多数公司选择的javascript库,如果你作为一个jser连jquery都不会用,那你就别混了,亲。
但是jquery并不是专门针对webkit的
jquery的包袱
jquery的特点就是write less do more并兼容各型浏览器,这是伟大的创举,同时也是其包袱,各种兼容浏览器的代码,各种为了write less而发明的选择器,方便我们程序人员的同时它却是自己的包袱,这也至使其付出性能代价。
如果你的应用是安装在移动端,或者是应用在硬件性能并不怎么好的android设备上,你就会关心jquery的性能问题了
mango放下了jquery的包袱
1、抛弃了各形浏览器兼容的代码专为webkit内核的浏览器而写;
2、直接使用了html5所原生支持的selector选择器;
3、使用最新的html5 提供的api 最大可能提升性能;
4、提供与jquery 95%一至的api,减少学习成本;
mango是否是重复造轮子?
mango只是提供了与jquery api几乎一至的api,但它却是纯为webkit而生的,也有别于zepto之类的javascript库。Mango就是用来写webkit内核的web app的,更纯粹。
mango的性能
经过测试mango的api性能
全面超越jquery1.3、jquery1.7、jquery2.0、zepto、jq.mobi
自行选用mango的模块
根据web app的简繁程度可以自由选择mango所需要的模块来选择mango文件,达到最小化mango文件
mango的模块及api
DOM模块
- find
- remove
- empty
- html
- text
- show
- hide
- siblings
- add
- addBack
- end
- closest
- parents
- parentsUntil
- children
- contents
- eq
- get
- first
- last
- each
- prop
- removeProp
- attr
- removeAttr
- val
- data
- parent
- offset
- css
- has
- is
- filter
- index
- addClass
- removeClass
- toggleClass
- hasClass
- before
- after
- scrollLeft
- scrollTop
- append
- appendTo
- prepend
- prependTo
- next
- nextAll
- nextUntil
- prev
- prevall
- prevUntil
- width
- innerWidth
- outerWidth
- height
- innerHeight
- outerHeight
Events模块
注:支持自定义事件及事件命名空间 ,命名空间以’/’符分隔
- On
- Off
- Hover
- Trigger
- One
(各种快捷事件)
click,dblclick,focusout,mousedown,mousemove,mouseout,mouseover,mouseup, change,select, focus, blur, scroll, resize,submit,keydown,keypress,keyup,error
Ajax模块
- $.ajax
- $.getJson
静态方法
- $.extend
- $.param
- $.isArray
- $.isBoolean
- $.isDate
- $.isNumber
- $.isObject
- $.isFunction
- $.isRegExp
- $.isString
- $.each
Todo list
#ajax模块完善
#更多的静态方法增加
#更多的jquery api
#完善Deferreds、Callbacks、Broadcast模块
如何使用
在html中引用mango
"mango.js"
接下来就可以像使用jquery一样使用mango了
==========================================================================================
转载处请注明:博客园偷饭猫willian12345@126.com
专为webkit内核而生的javascript库mango正式发布的更多相关文章
- 深入了解webkit内核第一篇:JavaScript引擎深度解析
看到HorkeyChen写的文章<[WebKit] JavaScriptCore解析--基础篇(三)从脚本代码到JIT编译的代码实现>,写的很好,深受启发.想补充一些Horkey没有写到的 ...
- [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析
[WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ...
- 八大Webkit内核浏览器
列举出时下最流行的Webkit内核浏览器,所以我们并不会做出评测和对比.PS:本文列举的浏览器有一部分为IE+Webkit双核浏览器,如果您对其他IE内核浏览器很感兴趣<抛弃数据!用体验和感觉告 ...
- iOS:WebKit内核框架的应用与解析
原文:http://www.cnblogs.com/fengmin/p/5737355.html 一.摘要: WebKit是iOS8之后引入的专门负责处理网页视图的框架,其比UIWebView更加强大 ...
- 浅谈关于QT中Webkit内核浏览器
关于QT中Webkit内核浏览器是本文要介绍的内容,主要是来学习QT中webkit中浏览器的使用.提起WebKit,大家自然而然地想到浏览器.作为浏览器内部的主要构件,WebKit的主要工作是渲染.给 ...
- Webkit内核探究【1】——Webkit简介
出处:http://www.cnblogs.com/jyli/archive/2010/01/31/1660355.html作者:李嘉昱 研究Webkit内核已经有一段时间了,在这期间我花了很多时间去 ...
- 从webkit内核简单看css样式和css规则优先级(权重)
目录 webkit中样式相关类及类间关系 样式规则匹配 权重(优先级)计算 权重相同时的覆盖原则 webkit中样式相关类及类间关系 资料来源: <webkit技术内幕> 结构相关类: 1 ...
- WebKit内核分析之Page
参考地址:http://blog.csdn.net/dlmu2001/article/details/6213377 注:本系列博客是在原博主博客基础上增加了自己的理解和片段,可以看源博文获得清晰的结 ...
- 【转】.NET多种WebKit内核/Blink内核浏览器初步测评报告
第1篇:.NET多种WebKit内核/Blink内核浏览器初步测评报告 本文转自“吾乐吧软件站”,原文链接:http://www.wuleba.com/?p=23590 报告研究时间:2013-10- ...
随机推荐
- Socket 学习(三)
前2节,说的是 Server 与 Client 的数据交互.服务端IP.端口固定,客户端 网服务端发送消息的时候,他的Socket对面被服务端获取到了,而且链接没有中断,他当然可以很容易回复信息. 现 ...
- EasyUI combox实现联动
多的时间将被用于combox联动效应.一个选择combox的值自己主动出这值有关相应的其他信息,例如省市联动.最近,我刚刚会见了班似要求,随着EasyUI combobox 控制完成.假设ASP.N ...
- 批处理命令篇--配置免安装mysql 5.6.22, 以及1067错误的一个解决方法
mysql 服务启动出现1067错误的一个解决方法: 当服务启动出现1067错误时,可查看“windows 事件查看器”,发现类似错误提示 Can't find messagefile 'F:\ ...
- Android的5样的调试信息
Android的5样的调试信息 华清2014-10-23 北京海淀区 张俊浩 verbose:只是滤全部的信息. 啰嗦的意思. debug:debug调试的意思. info:一般提示的信息inf ...
- CSS中选择器优先级顺序实战讲解
原文:CSS中选择器优先级顺序实战讲解 我们有些程序猿在给一个元素(比如div)应用样式的时候,会有一些疑问,为什么我写在后面的样式不能覆盖前面的样式呢,不是说CSS是层叠样式表吗? 如果你在开发中也 ...
- UI控件库
UI控件库分享:DWZ(j-UI).LigerUI.Linb DWZ(j-UI): 在线演示地址:http://demo.dwzjs.com 在线文档:http://demo.dwzjs.com/do ...
- C# 笔试题,看你会几道题
1. Which interface you need to implement to support for each? IEnumerator IEnumerable ICompare ...
- linux大杂烩
linux: 进入hbase后不能移动光标和删除 Options-Session Options -- Terminal --右边的Terminal中选择linux然后点击OK就好了
- 关于ligerform中select与text的赋值与取值
如有下ligerform表单: var formData = [ { display: "区域", name: "QYYJ", newline: true, l ...
- C# 通过扩展WebBrowser捕获网络连接错误信息
想捕获WebBrowser连接指定网站过程中发生的错误信息,包括网络无法连接.404找不到网页等等错误!经过网上的搜集,找到了以下解决方案,该解决方案不会在网站连接前发出多余的测试请求. 向Webbr ...