专为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- ...
随机推荐
- Codeforces 328B-Sheldon and Ice Pieces(馋)
B. Sheldon and Ice Pieces time limit per test 1 second memory limit per test 256 megabytes input sta ...
- 基于.NET MVC的高性能IOC插件化架构
基于.NET MVC的高性能IOC插件化架构 最近闲下来,整理了下最近写的代码,先写写架构,后面再分享几个我自己写的插件 最近经过反复对比,IOC框架选择了Autofac,原因很简单,性能出众,这篇博 ...
- Socket 学习(一)
本次项目增加的引用using System.Net; using System.Net.Sockets; using System.Threading; TextBox.CheckForIllegal ...
- Node.js与MongoDB的基本连接示例
Node.js与MongoDB的基本连接示例 前提 已经安装了node.js和MongoDB,本文使用的node.js是v0.12.0,MongoDB是3.0.0. 初始化数据 启动MongoDB服务 ...
- 网站静态化处理—web前端优化—上
网站静态化处理—web前端优化—上(11) 网站静态化处理这个系列马上就要结束了,今天我要讲讲本系列最后一个重要的主题web前端优化.在开始谈论本主题之前,我想问大家一个问题,网站静态化处理技术到底是 ...
- 多个Storyboard切换
- (void)showStoryboard { // 实例化MainStoryboard UIStoryboard *storyboard = [UIStoryboard storyboardWit ...
- ASP.NET 5 Hello World
ASP.NET 5系列教程 (二):Hello World 本篇文章内容比较基础,主要是向大家展示如何创建一个 ASP.NET 5 工程,主要包含内容如下: 创建ASP.NET 5 工程 添加 T ...
- C# 对Outlook联系人的增、删、查
原文:C# 对Outlook联系人的增.删.查 [转] 注:定义变量 Outlook.Application myOlApp = new Outlook.ApplicationClass(); Out ...
- 文件合并工具DiffMerge发布4.2版本
DiffMerge一直是文件对比合并工具的佼佼者,其最大特点是多文件对比与合并,并提供可视化界面用于编辑. 此次DiffMerge v4.2发布,提高了文件差异对比,并提供了快速匹配功能,以及更好的用 ...
- 用javascript实现2048的小游戏
前段时间,看了一个视频,用javascript实现的2048小游戏,发现不难,都是一些基出的语法和简单逻辑. 整个2048游戏没有很多的数据,所有,实现起来还是很有成就感的. 先上图,简直就和原版游戏 ...