移动开发框架,第【一】弹:QuoJs 官方文档(汉化版)
作者:一只猿
原文地址:
转载请注明出处,谢谢
帮助说明
如果您认为QuoJS只是一个触摸事件管理器,那你就错了,它是一个功能丰富的类库,无需第三方JavaScript库(例如 jQuery, Prototype, Kendo ...)来创建基于浏览器应用程序的复杂项目。
如何使用
QuoJS使用的命名空间是$$,所以如果你需要的话,你还可以使用其它的JavaScript类库例如(jQuery,Zepto...)使用通用符号$。
|
1
2
3
4
5
6
7
8
9
10
11
|
// Find all <span> elements in <p> elements$$('span', 'p');//Subscribe to a tap event with a callback$$('p').tap(function() { // affects "span" children/grandchildren $$('span', this).style('color', 'red');});// Chaining methods$$('p > span').html('tapquo').style('color', 'blue'); |
查询方法
QuoJs有DOM元素查询引擎与其它著名的类库非常相似.你已经使用的jQuery的很多方法在这里都可以使用.
|
1
2
3
4
5
6
7
8
9
|
.get(index).find('selector').parent().siblings('selector').children('selector').first().last().closest('selector').each(callback) |
元素方法
QuoJs有DOM元素查询引擎与其它著名的类库非常相似.你已经使用的jQuery的很多方法在这里都可以使用.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
// Get/Set element attribute.attr('attribute').attr('attribute', 'value').removeAttr('attribute')// Get/Set the value of the "data-name" attribute.data('name').data('name', 'value')// Get/Set the value of the form element.val().val('value')// Show/Hide a element.show().hide()// get object dimensions in px.offset('selector').height().width()// remove element.remove() |
样式方法
QuoJS可以轻松管理你任何DOM元素的CSS样式,这些方法很箱子,你很容易记住所有的CSS方法
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
// set a CSS property.style('css property', 'value') // add/remove a CSS class name.addClass('classname').removeClass('classname').toggleClass('classname')// returns true of first element has a classname set.hasClass('classname')// Set a style with common vendor prefixes.vendor('transform', 'translate3d(50%, 0, 0)');$$('article').style('height', '128px');$$('article input').addClass('hide');var houses = $$('.house');if (houses.hasClass('ghost')) { houses.addClass('buuhh');} |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
// get first element's .innerHTML.html()// set the contents of the element(s).html('new html')// get first element's .textContent.text()// set the text contents of the element(s).text('new text')// add html (or a DOM Element) to element contents.append(), prepend()// If you like set a new Dom Element in a existing element.replaceWith()// Empty element.empty()$$('article').html('tapquo');var content = $$('article').html(); //content is 'tapquo' |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
// add event listener to elements.on(type, [selector,] function);// remove event listener from elements.off(type, [selector,] function);// triggers an event.trigger(type);//If loaded correctly all resources.ready(function);// Subscribe for a determinate event$$(".tapquo").on("tap", function);// Trigger custom event$$(".quojs").trigger("loaded");// Loaded page$$.ready(function() { alert("QuoJS rulz!");}); |
手势事件
既然QuoJs支持浏览器的触摸事件,那么你有无数的事件和手势来帮助你做任何一个项目
|
1
2
3
4
5
6
7
8
|
//Tap event, common event.tap(function);//Long tap event (650 miliseconds).hold(function);//A tap-delay event to combine with others events.singleTap(function);//If you send two singleTap.doubleTap(function); |
滑动方法
不仅有基本的滑动方法,常见的应用程序中有很多的滑动你都可以使用
|
1
2
3
4
5
6
7
8
|
.swipe(function);//Detect if is swipping.swiping(function);//Swipe directions.swipeLeft(function);.swipeRight(function);.swipeDown(function);.swipeUp(function); |
捏方法(类似iphone图片缩小的手势 )
As with the previous gesture, QuoJS have easy control over this gesture and its variations.|
1
2
3
4
5
6
|
.pinch(function);//Detect if is pinching.pinching(function);//Pinch zoom.pinchIn(function);.pinchOut(function); |
旋转方法(Rotate methods)
|
1
2
3
4
5
6
|
.rotate(function);//Detect if is rotating.rotating(function);//Rotate directions.rotateLeft(function);.rotateRight(function); |
Ajax方法
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
$$.get(url, [parameters], [callback], [mime-type]);$$.post(url, [parameters], [callback], [mime-type]);$$.put(url, [parameters], [callback], [mime-type]);$$.delete(url, [parameters], [callback], [mime-type]);$$.json(url, [parameters], [callback]);$$.json(url, {id: 1980, user: 'dan'}, function(data){ ... });$$.ajax({ type: 'POST', // defaults to 'GET' data: {user: 'soyjavi', pass: 'twitter'}, dataType: 'json', //'json', 'xml', 'html', or 'text' async: true, success: function(response) { ... }, error: function(xhr, type) { ... }}); |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
//Default Settings$$.ajaxSettings = { async: true, success: {}, error: {}, timeout: 0};//Set de default timeout to 1 second (1000 miliseconds)$$.ajaxSettings.timeout = 1000;//Set de default callback when ajax request failed$$.ajaxSettings.error = function(){ ... };$$.ajaxSettings.async = false; |
环境事件
The environment object contains useful information to learn more about your device.
|
1
2
3
4
5
6
7
|
var env = $$.environment();env.browser //[STRING] Browser of your mobile deviceenv.isMobile //[BOOLEAN]env.os.name //[STRING] iOS, Android, Blackberry...env.os.version //[STRING] Versión of OSenv.screen //[OBJECT] With properties: width & height |
移动开发框架,第【一】弹:QuoJs 官方文档(汉化版)的更多相关文章
- zabbix3.2_yum官方文档centos 7版
Installation from packages 1 Repository installation 2 Server installation with MySQL database 3 Ser ...
- GSAP 官方文档(结贴)
好久没写GSAP的教程的(其实我也不懂哈哈),国内也没什么人用,不对动画要求特别高的话,其实也没必要用GSAP,现在工作上没用到这个东西,也懒得写了,所以有问题的话去找一下greensock的官方文档 ...
- Hui之Hui.js 官方文档
基础 // 判断值是否是指定数据类型 var result = hui.isTargetType("百签软件", "string"); //=>true ...
- Swift -- 官方文档Swift-Guides的学习笔记
在经历的一段时间的郁闷之后,我发现感情都是虚伪的,只有代码是真实的(呸) 因为看了swift语法之后依然不会用swift,然后我非常作死的跑去看官方文档,就是xcode里自带的help>docu ...
- Google Android官方文档进程与线程(Processes and Threads)翻译
android的多线程在开发中已经有使用过了,想再系统地学习一下,找到了android的官方文档,介绍进程与线程的介绍,试着翻译一下. 原文地址:http://developer.android.co ...
- Spring官方文档下载
Spring框架是目前最流行的java web开发框架,很多时候,我们需要去查看spring的官方文档,这里就简单介绍下如何下载其官方文档. 1.搜索到spring 官网并进入 2.点击DOCS 3. ...
- Elasticsearch官方文档离线访问实操指南
文章转载自:https://mp.weixin.qq.com/s/Cn9ddkj-cne5pKtfOgNPbg 延申一下,不仅能下载Elasticsearch官方文档,还能下载其他软件的官方文档,详看 ...
- 【AutoMapper官方文档】DTO与Domin Model相互转换(上)
写在前面 AutoMapper目录: [AutoMapper官方文档]DTO与Domin Model相互转换(上) [AutoMapper官方文档]DTO与Domin Model相互转换(中) [Au ...
- 2DToolkit官方文档中文版打地鼠教程(三):Sprite Collections 精灵集合
这是2DToolkit官方文档中 Whack a Mole 打地鼠教程的译文,为了减少文中过多重复操作的翻译,以及一些无必要的句子,这里我假设你有Unity的基础知识(例如了解如何新建Sprite等) ...
随机推荐
- [C#学习]在多线程中如何调用Winform[转]
问题的产生: 我的WinForm程序中有一个用于更新主窗口的工作线程(worker thread),但文档中却提示我不能在多线程中调用这个form(为什么?),而事实上我在调用时程序常常会崩掉.请问如 ...
- Firebug中命令行栏(Commandlinie)的使用介绍和总结
Commandlinie是Firebug中总有用的一个特性.如果你有Microsoft Visual Studio的使用经验,你就会知道“Immediate Window” 和“Watch Windo ...
- getimagesize函数介绍
getimagesize(); 返回结果说明 索引 0 给出的是图像宽度的像素值 索引 1 给出的是图像高度的像素值 索引 2 给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 ...
- 精通 Oracle+Python,第 4 部分:事务和大型对象
通过 Python 管理数据事务.处理大型对象 2010 年 3 月发布 事务包含一组 SQL 语句,这组 SQL 语句构成数据库中的一个逻辑操作,如转帐或信用卡支付操作.将 SQL 语句聚合到一个逻 ...
- Visual Studio C/C++ 编译器选项
优化- /O1 最小化空间 /O2 最大化速度/Ob<n> 内联扩展(默认 n=0) /Od 禁用优化(默认) ...
- Quartz1.8.5例子(七)
/* * Copyright 2005 - 2009 Terracotta, Inc. * * Licensed under the Apache License, Version 2.0 (the ...
- BootStrap Progressbar 实现大文件上传的进度条
1.首先实现大文件上传,如果是几兆或者几十兆的文件就用基本的上传方式就可以了,但是如果是大文件上传的话最好是用分片上传的方式.我这里主要是使用在客户端进行分片读取到服务器段,然后保存,到了服务器段读取 ...
- "Cannot convert value '0000-00-00' from column 2 to TIMESTAMP"mysql时间转换bug
今天在项目中遇到这样的一个bug,Cannot convert value '0000-00-00' from column 2 to TIMESTAMP 仔细一查,经过http://blog.csd ...
- Welcome to JimmyCheung's blog!
博客开通,写写学习笔记,写写心情,写写生活中的点点滴滴~ 有钱的捧个钱场嘞,没钱的贡献个点击量,新鲜的博客出炉咯,来五毛钱的博文呗~ By Jimmy 2014.09.16
- 【Tools】Apache Maven 入门篇 ( 上 )
作者:George Ma 写这个 maven 的入门篇是因为之前在一个开发者会的动手实验中发现挺多人对于 maven 不是那么了解,所以就有了这个想法.这个入门篇分上下两篇.本文着重动手,用 mave ...