`
黄继华
  • 浏览: 47662 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

jqMobi指南系列教程是《 jqMobi Javascript Frameworks Cheat Sheet》 的中文版

 
阅读更多

jqMobi指南系列教程是《 jqMobi JavascriptFrameworks Cheat Sheet》 的中文版,详细介绍了jqMobi.

jqMobi指南(一):介绍jqMobi组成

jqMobi是针对HTML5浏览器的JavaScript框架

它是由三个部分组成:

jQMobi(一个极快的查询选择库,支持W3C查询)

jqUi(运行在WebKit浏览器之上的移动应用程序的UI/UX库)

jqPlugins(移动应用运行在WebKit浏览器的插件)。

应用的前期准备工作:

下载jqMobi框架

https://github.com/appmobi/jQ.Mobi

在应用中使用jqMobi,通过加入下面的script标记在你的HTML文件里:

1. <scripttype="text/javascript"charset="utf-8" src="jq.mobi.min.js"></script>

复制代码

在应用程序中使用/引用包括所有jqPlugins,通过加入下面的script标签在你的HTML文件的标记里:

<scripttype="text/javascript"charset="utf-8"src="jq.web.min.js"></script>

如果有需要你也可单个引用插件,例如

1. <scripttype="text/javascript" charset="utf-8"src="plugins/jq.scroller.js"></script>

复制代码

通过添加下面的script标签和link标签在你的应用里引用jqUi

1. <scripttype="text/javascript"charset="utf-8"src="ui/jq.ui.min.js"></script>

2. <linkrel="stylesheet"type="text/css" href="jq.ui.css"/>

复制代码

jqMobi组件

名称 内容
jqMobi jq.mobi.min.js一个速度极快的查询选择工具,为Html5浏览器做了优化
jqPlugins

Jq.web.min.js-为运行在webkit核心浏览器的移动应用而做的插件,既可以用它来开发移动app也可用在传统的手机web开发中。

包括:

jq.alphatable, jq.carousel,jq.css3animate,jq.drawer,

jq.passwordBox, jq.swipeListener, jq.scroller,jq.selectBox, and jq.template

jqUi

Jq.ui.min.js -为建立针对webkit核心浏览器的jqMobi移动应用而设的UI/UX框架, css3animate, passwordBox, scroller, andselectBox jqPlugins的几个组件加在一起组成的:

固定的标题栏,自动滚动的内容面板,

一个可选的Navbar细分您的应用程序


jqMobi指南(二):jqMobi(查询选择库)之用法(Usage):

原文(《jqMobi Javascript Frameworks Cheatheet(jqmobi 1.0),

【译文】:
加入以下script标记在你的html文件中以使用jQMobi

1. <scriptsrc="jq.mobi.min.js"></script>

复制代码

这将创建两个可使用的对象。它不会覆盖一个预先存在的$对象.

1. $("#main")

2. jq("#main")

复制代码

查询选择器
支持所有符合W3C标准的查询,如下选择都被支持:

1. $("input[type='text']")/下面的选择不被浏览器支持

2. $("input:text")

复制代码

在某些函数里,会用到一个额外的选择器。这有可能是一个字符串、数组、或者一个jQMobi 对象,目前还不支持函数。

语法:
基本的调用

1. $("#id").hide()

复制代码

列举Dom元素、选择器、节点列表,或者html字符串

1. $("span").bind("click",function({console.log("clicked");});//->查找所有span元素并绑定一个click事件

复制代码

通过传递一HTML字符串来创建相应的对象

1. var myDiv=$("<divid='foo'>") //创建并返回一个div对象

复制代码

jqMobi使用Ajax

1. .get(url,callback) //发起一个到该URLAjax请求并将返回的结果用在回调函数中;

2. .post(url,data,callback,dataType) //用传入的数据向该URL发起一个AjaxPOST请求并将返回的结果用在回调函数中。可传入一个可选的数据类型,因为有的WEB服务器需要这个头部。

3. .getJSON(url,data,callback) //用传入的数据向该URL发起一个Ajax请求,并将从应答中得到的json对象传到回调函数,同时执行该回调函数。

复制代码

如果需要更多的入口,以下信息会被用到;

1. .ajax {

2. type:'POST', //默认为GET

3. url:'/api/getinfo', //默认为window.location

4. contentType:'application/json', //默认为application/x-www-form-urlencoded

5. headers:{},

6. dataType:'application/json', //默认为text/html

7. data:{username:foo}, //可以是一个/值对字符串或对象。如果是一个对象,可用调用$serialize函数把该对象转换为一键/值对字符串。

8. success:function(data){}, //Ajax请求成功时调用的函数

9. error:function(data){}, //Ajax请求出错时调用的函数

10. }

复制代码

AjaxGET请求时,如果请求的url中包含了"="字样,将会发起一个jsonp请求。
插件
jQMobi
具有可扩展性,通过添加插件的方式来扩展。
要创建一个插件,传递一个主要jqMobi对象的参照继承$.fn对象。

jQMobi指南(三)jQMobiAPI 函数(中英文对照)

《jqMobi JavascriptFrameworks Cheat heet(jqmobi 1.0)》

.map(elements,callback)
//Executes callback function on each element

.map(elements,callback)//把当前匹配集合中的每个元素传递给函数,产生包含返回值的新JQMobi 对象。

.each(elements,callback)//Iterate throughelements and execute callback

.each(elements,callback)//对 jQMobi 对象进行迭代,为每个匹配元素执行函数。

.extend(target,{params})//Extends anobject with additional arguments

.extend(target,{params})//给一个对象扩展一个额外的元素

.isArray(data)//Returns true/false if datais an array

.isArray(data)//判断是否为数组,返回值为布尔值。

.isFunction(data)//Returns true/false ifdata is a function

.isFunction(data)//判断是否为函数返回值为布尔值

.isObject(param)//Returns true/false ifparam is an object

.isObject(param) //判断是否为对象返回为布尔值

.ready(callback)// Callback executed whenDOMContentLoaded happens

.ready(callback)//页面加载完成后开始运行

.find(selector)// Find all chidlren thatmatch the given selector

.find(selector)// 根据已给的选择器查找所有下级元素

.html(['newhtml']) // Get/Set the elements.innerHTML

.html(['newhtml']) // 取得/设置该元素的.innerHTML


.text(['newtext']) // Get/Set the elements .innerTEXT

.text(['newtext']) //取得/设置该元素的innerText

.css('property',['value'])//Get/Set theelements css property to value

.css('property',['value'])//获得/设置元素CSS指定属性的值

.empty()//Sets the elements .innerHTML toan empty string

.empty()//设置该元素的.innerHHML一空字符串

.hide()//Sets the elements display cssattribute to "none"

.hide() //设置该元素CSS的display属性为"none"

.show()//Sets the elements display cssattribute to "block"

.show() //设置该元素CSS的display属性为"block"

.toggle()//Togglesthe elements display cssattribute

.toggle()//切换该元素的CSS的display属性(显示/隐藏)

.val(["value"])//Get/Set the elementsvalue property

.val(["value"])//获得该元素的value属性

.attr("attribute",["value"])//Get/Setthe elements attribute

.attr("attribute",["value"])//获得/设置这个元素的属性

.removeAttr("attribute")//Removesthe attribute from the elements

.removeAttr("attribute")//移除当前元素的该属性

.remove()//Remove an element from the Dom

.remove()//从DOM中移除指定元素

.addClass("className")//Adds thecss class name to the selected elements

.addClass("className")//给指定的元素添加该名称的css类

.removeClass("className")//Removesa css class from the selected lements

.removeClass("className")//移除指定元素该名称的css类

.hasClass("className",[_element])//Checksto see if an element has a class

.hasClass("className",[_element])//检查一个元素时候含有该名称的类

.append(element,[insert])//Appends anelement to the selected elements

.append(element,[insert])//向每个匹配的元素内部后置内容。

.prepend(element)//Prepends an element tothe selected elements

.prepend(element)//向每个匹配的元素内部前置内容。

.insertBefore(target)//Inserts acollection before the target (adjacent)

.insertBefore(target)//把匹配的元素插入到另一个指定的元素集合的前面。


.insertAfter(target)//Inserts a collection after the target (adjacent)

.insertAfter(target)//把匹配的元素插入到另一个指定的元素集合的后面。

.get([index])//Getraw DOM element based onindex. () returns first element

.get([index])//获得基于. index ()返回的第一个元素

.offset()//Calculates the first elementsoffset on the screen

.offset()//计算元素在屏幕上的位置

.parent(selector)//Returns the parentnodes based off selector

.parent(selector)//返回该元素的父元素

.children(selector)//Returns the childrenof the elements

.children(selector)//返回该元素的后代元素

.siblings(selector)//Returns the siblingsof the elemnts

.siblings(selector)//获得匹配元素集合中所有元素的同辈元素。

.closest(selector,[context])//Returnstheclosestelement based off selector

.closest(selector,[context])//从元素本身开始,逐级向上级元素匹配,并返回最先匹配的祖先元素。

.filter(selector)//Filters the elementsbased off selector

.filter(selector)//将匹配元素集合缩减为匹配指定选择器的元素。

.not(selector)//Return all matches that doNOT match the selector

.not(selector)//返回从匹配元素集合中删除该元素集合。

.data(key,[value])//Gets/Setsa data-*attribute for the param

.data(key,[value])//获得/设置一个data-*属性。

.end()//Rolls back the jqMobi elementswhen filters were applied

.end() //回滚jqMobi元素当过滤器被应用时

.clone()//Clones the nodes in thecollection

.clone()//克隆节点到知道集合

.size()//Returns the number of elements ina collection

.size() //返回匹配元素数量。

.serialize(grouping)//Serializes a forminto a query string

.serialize(grouping)//将表单内容序列化为字符串。

.jsonP(options)//Execute a jsonP call,allowing cross domain scripting

.jsonP(options)//执行JSONP请求,允许跨域

.bind("event",function(){})//Bindsa function to the event listener

.bind("event",function(){})//向匹配元素附加一个或更多事件处理器

.unbind("event",[callback])//Unbindsa function to the event listener

.unbind("event",[callback])//从匹配元素移除一个被添加的事件处理器

.one("event",callback)//Bindevent to each element - only executes once

.one("event",callback)//向匹配元素添加事件处理器。每个元素只能触发一次该处理器。

.delegate(selector,"event",callback)//Delegatean event bassed off selector

.delegate(selector,"event",callback)//向匹配元素的当前或未来的子元素附加事件处理器

.undelegate(selector,"event",[callback])//Unbindan event registered through delegate

.undelegate(selector,"event",[callback])//从匹配元素移除一个被添加的事件处理器

.on("event",selector,callback)//类似于 .delegate()

.off("event",selector,[callback])//删除.on()添点的事件处理器

.trigger("event",data)//Triggeran event and pass inoptionaldata

.trigger("event",data)//触发事件,并传入一个数据(可选)

.proxy(callback,context)//Creates a proxyfunction so the ‘this’contextcan

be changedin the function

.proxy(callback,context)//创建一个代理函数,改变该函数中'this'作用域

jQMobi助手调用

.param() //Serialize a JSON object intoKVP for aquerystring

.param() //序列化一个JSON对象为键/值对字符串

.parseJSON(string) //Backwardscompatability JSON parsing call.Uses the browsers native JSON parser

parseJSON(string) //向后兼容JSON解析调用。使用浏览器原生JSON解析器

.parseXML(string) //Parses a string and returns a XML documentversion
.parseXML(string)//解析字符串并返回一XML文档的版本

.uuid//Utility function tocreate a pseudo GUID

.uuid//用来来创建一个伪GUID

.Event(type,props) //Creates a customevent to be used internally

.Event(type,props) //创建一个内部使用的自定义事件

jQMobi操作系统检测

$.os.webkit//True if webkit found in the user agent

$.os.webkit //如果浏览器为webkit核心,返回true

$.os.android //True ifanroid user agent

$.os.android //如果用户设备为android,返回true

$.os.ipad //True if iPad user agent

$.os.ipad //如果用户设备为ipad,返回true

$.os.iphone//True if iPhone user agent

$.os.iphone //如果用户设备为iphone,返回true

$.os.webos //True if WebOS detected

$.os.webos //如果用户设备为webos,返回true

$.os.touchpad //True ifWebOS and Touchpad user agent

$.os.touchpad //如果用户设备为touchpad,返回true

$.os.ios //True if iPad or iPhone

$.os.ios //如果用户设备为iPadiPhone,返回true

$.os.blackberry //True if Blackberry PlayBook or OS >=6

$.os.blackberry //如果用户设备为黑莓PlayBookOS> = 6,返回true

jQMobi指南(四)-jqUi用法及 jqUi API 函数 ($.ui)

jqUi API函数($.ui)

.loadDefaultHash //Boolean to load/notloadpanel from hash when app started

(default is True)

.loadDefaultHash //布尔值设置应用开始后是否从hash加载panel(默认为true)

.blockUI(opacity) //Throw up a maskandblock the UI

.blockUI(opacity) //产生一遮罩层并锁住UI

-Opacity 为遮罩层透明度。

.unblockUI() //Removes the UI mask

.unblockUI() //删除遮罩层开启ui

.removeFooterMenu() //Removes thebottomnav bar from app

.removeFooterMenu() //删除app底部的导航栏

.showNavMenu //Boolean to show bottomnavbar

.showNavMenu //布尔值,是否显示底部导航栏

.autoLaunch //Boolean to auto launchjqUi

.autoLaunch //布尔值,是否自动运行jqUi

.isAjaxApp //Boolean that when truetreatsevery request as if the anchor had

data-refresh-ajax=true and data-persist-ajax=true

.isAjaxApp //布尔值,为true时如同<a>标签设有data-refresh-ajax=trueanddata-persist-ajax=true属性

.showLoading //Boolean to show/notshowloading spinner on ajax requests

.showLoading //布尔值,显示或隐藏ajax请求时表示正在加载的旋转体(就是无限菊花”中的菊花)

.launch() //Launch jqUi. If autoLaunchistrue, gets called on DOMContentLoaded

.launch() //运行jqUi。如果autoLaunch设为trueDOM加载完时调用.launch()

.showBackButton //Boolean to show thebackbutton

.showBackButton //布尔值,是否显示返回按钮

.resetScrollers //Boolean to resetthescroller position when navigating panels

.resetScrollers //布尔值,在导航panels时重置滚动条位置

.ready(function) //Function to firewhenjqUi is ready and completed launch

.ready(function) //jaUi已加载,并完全运行时执行传入的函数

.setBackButtonStyle(class) //Overridetheback button class name

.setBackButtonStyle(class) //重写返回按钮的class名称

.goBack() //Initiate a backtransition

.goBack() //发起一返回转场

.clearHistory() //Clear the historyqueue

.clearHistory() //清除历史队列

.updateBadge(target,value,[position])//Updatea badge on the selected target

.updateBadge(target,value,[position]) //给选定的目标添加标记

演示地址:http://blog.siyue.cc/jqmobi/lib/#uiremovebadge

.removeBadge(target) //删除为选定的目标添加的标记

.toggleNavMenu([force]) //Toggle thebottomnav menu

.toggleNavMenu([force]) //显示或隐藏底部导航菜单

.toggleHeaderMenu([force]) //Toggle thetopheader menu

.toggleHeaderMenu([force]) //显示或隐藏头部菜单

.toggleSideMenu([force]) //Toggle thesidemenu

.toggleSideMenu([force]) //显示或隐藏侧边栏菜单

.updateNavbarElements(elements)//Updatethe elements in the navbar

.updateNavbarElements(elements) //更新导航栏下的元素

.updateSideMenu(elements) //Updatetheelements in the side menu

.updateSideMenu(elements) //更新导航栏菜单下的元素

.setTitle(value) //Set the title ofthecurrent panel

.setTitle(value) //为当前panel设置标题

.setBackButtonText(value) //Overridethetext for the back button

.setBackButtonText(value) //重写返回按钮的文字内容

.showMask(text) //Show the loading mask

.showMask(text) //显示表示正在加载的遮罩层

.hideMask() //Hide the loading mask

.hideMask() //隐藏已表示的加载遮罩层

.showModal() //Load a content panel in amodal window

.showModal() //加载一内容panel在模式窗口

.hideModal() //Hide the modal windowandremove the content

.hideModal() //隐藏模式窗口,并删除已加载进去的内容

.updateContentDiv(id,content) //UpdatetheHTML in a content panel

.updateContentDiv(id,content) //更新指定id panelHTML

.addContentDiv(id,content,title)//Dynamicallycreate a new panel

.addContentDiv(id,content,title) //动态创建一个新panel

.loadContent(target,newTab,goBack,transition)//Initiatea transition or load

via ajax

.loadContent(target,newTab,goBack,transition)//发起转场或通过ajax加载

.scrollToTop(id) //Scroll a panel tothetop

.scrollToTop(id) //滚动到panel顶部

.slideTransition(prevPanel,currPanel,goBack)//Initiatea sliding transition

.slideTransition(prevPanel,currPanel,goBack)//发起滑动转场

.finishTransition(oldDiv) //Called atendof each transition to hide the old

div and reset thedoing Transition variable

.finishTransition(oldDiv) //在每次转场结束时调用,以隐藏旧DIV并重设正在进行的转场变化。

jQMobi指南(五)jq.Plugins用法

1.jq.scroller

用法:

1.给滚动的可见区域创建与该区域相同高宽的外部container DIV

1. <div id="my_div_container"style="width:100%;height:300px">

2. <!-- div from below goeshere -->

3. </div>

复制代码

2.创建包含滚动内容的DIV

1. <div id=”my_div” >

2. <!-- content goes here -->

3. </div>

复制代码

3.调用下面函数

1. var scroller =$("#my_div").scroller();

复制代码

以对象作为参数传递其他配置选项

1. var options={

2. verticalScroll:true,//vertical scrolling

3. horizontalScroll:false,//horizontal scrolling

4. scrollBars:true//display scrollbars

5. vScrollCSS :"scrollBarV", //CSS class for veritcal scrollbar

6. hScrollCSS :"scrollBarH", //CSS class for horizontal scrollbar

7. refresh:true, //Adds 'Pullto refresh' at the top

8. refreshFunction:updateMessage //callback function to execute on pull to

9. refresh

10. }

11. var scroller =$("#my_div").scroller(options);

复制代码

Note: 你也可通过下面的方法滚动到指定位置

scroller.scrollTo({x:-100,y:-200});

如果你想一直显示滚动条,在你CSS文件里重写下面类的 opacity样式即可

1. .scrollBarV { opacity:.8 !important}




分享到:
评论

相关推荐

    jqMobi参考手册

    ### jqMobi参考手册:构建高效移动应用的全面指南 #### 概述 `jqMobi`是一款专为HTML5浏览器设计的JavaScript框架,旨在优化移动应用开发过程,提升用户体验。该框架由三大部分组成:`jqMobi`、`jqUi`与`jqPlugins...

    appframework jqmobi demo

    《AppFramework与JqMobi实战:打造高效移动应用》 在移动应用开发领域,AppFramework和JqMobi是两个备受开发者喜爱的轻量级框架。它们为开发者提供了便捷的工具,使得创建功能丰富的、跨平台的移动应用变得更加简单...

    jqmobi app-framework-2.1.0

    JQMobi 是一个轻量级的JavaScript库,而App Framework则是基于JQMobi的一个扩展,提供了更全面的移动应用开发解决方案。 JQMobi 的设计目标是提供与jQuery类似的API,使开发者能够轻松地处理DOM操作、事件处理和...

    jqmobi移动开发

    jqMobi 是一个专为移动应用开发设计的轻量级JavaScript框架,它旨在简化手机端和移动端应用的构建过程,提供高效的性能和友好的API接口。作为一款强大的工具,jqMobi 具备了与jQuery相似的语法风格,使得开发者能够...

    jqmobi1.02rc1

    压缩包内的1.02rc1可能包含以下内容:框架的JavaScript库文件、文档、示例代码、测试用例、API参考和可能的更新日志。开发者可以通过这些资源学习如何使用jqMobi,解决可能出现的问题,并了解新版本的改进和修复。 ...

    jqMobi学习笔记

    jqMobi是一款轻量级的JavaScript库,专为移动设备设计,旨在简化移动Web应用的开发。它在PhoneGap和Android等原生环境中的表现尤为出色,提供了与jQuery类似的功能,但体积更小,加载速度更快,更适合资源有限的移动...

    JqMobi+PhoneGap项目实战

    JqMobi是一款专门为移动设备和HTML5浏览器设计的JavaScript框架,具有高效的查询选择库特性,它在2012年1月由appMobi公司推出,初期版本为MIT/X11...最后,本节教程是由phonegap中文网(***)提供的,感谢学习者的收看。

    jqmobi icon图标大全

    jqMobi 是一个轻量级的JavaScript移动框架,专为手机和触摸设备设计,旨在提供高效、简洁的移动应用开发解决方案。它包括了一系列的功能,如事件处理、动画效果、Ajax加载以及触摸优化等。在jqMobi中,图标是UI设计...

    Jqmobi做的百度地图,支持三维地图 源码

    在移动应用开发领域,Jqmobi 是一个专为移动端打造的JavaScript框架,它提供了一套简单易用的API,使得开发者能够快速构建高效、流畅的移动Web应用。本项目是基于Jqmobi实现的百度地图功能,特别是实现了三维地图的...

    appframework-master 2.0

    jqMobi是由appMobi针对HTML5浏览器和移动设备开发的javascript框架,是个极快速的查询选择库,支持W3C查询。 版本 jqMobi源码最初在2012年1月份推出,基于MIT/X11许可证,托管在GitHub上,开发者可参与并通过插件...

    jqmobi+phonegap+手机触屏滑动效果js

    它提供了类似于jQuery的API,使得DOM操作变得简单,同时在性能上优于大部分移动版jQuery,因为jqMobi不依赖于任何其他库,直接针对移动设备的特性进行了优化。 二、PhoneGap概述 PhoneGap是一款基于Apache Cordova...

    Jqmobi做的百度地图,支持三维地图 源码

    Jqmobi是一款轻量级的JavaScript移动Web框架,它专注于为移动设备提供高效、简洁的交互体验。本项目是将Jqmobi与百度地图API结合,实现了在移动端展示三维地图的功能。通过这份源码,我们可以深入学习如何在移动应用...

    mobiscroll时间控件支持jqmobi等

    在jqMobi的支持方面,Mobiscroll与这个轻量级的JavaScript库无缝集成,使得开发者能够在基于jqMobi构建的应用中快速添加时间控件。jqMobi是专为移动设备优化的JavaScript框架,它的轻巧和高效使得结合Mobiscroll时,...

    intel appframework3.0测试版 jqmobi3.0测试版

    intel appframework3.0测试版 jqmobi3.0测试版 App Framework 3.0和前面的版本比较有很大的变动。当本项目于2011开启之后,一直聚焦于修正系统的bug(比如安卓平台上的 CSS3 变换)、提供一个可靠的 scrolling ...

    jqmobi微信

    使用jqmobi,模仿微信做工作管理系统

    webAPP开发教程

    快速入门(3)可能意味着这是系列教程的第三部分,旨在让初学者快速掌握JqMobi插件的使用方法。 总的来说,这个WebAPP开发教程覆盖了从基础到进阶的内容,包括使用JqMobi进行前端开发,以及通过PhoneGap实现跨平台的...

    jqm开发的音乐播放器

    jqMobi 是一个轻量级的 JavaScript 框架,专为移动设备优化,旨在提供快速、高效且易于使用的前端开发解决方案。本项目利用 jqMobi 实现了一个音乐播放器,旨在提供流畅的音乐播放体验,同时也展示了 jqMobi 在构建...

    jqmobile3.0

    它与jqMobi紧密相关,jqMobi是一个高效的查询和DOM操作库,类似于jQuery,但针对移动设备进行了优化。jqMobile则进一步扩展了jqMobi的功能,提供了更丰富的移动UI组件和交互设计。 在jqMobile 3.0中,开发者可以...

    快速参考手册

    ### jqMobi快速参考手册知识点解析 #### 一、简介 **jqMobi**是一款针对HTML5浏览器的JavaScript框架,其主要目标是提供一个高效、轻量级且易用的工具集来支持移动Web开发。该框架由三个核心部分组成:**jqMobi**...

    Learning Node.js mobi

    Learning Node.js 英文mobi 本资源转载自网络,如有侵权,请联系上传者或csdn删除 本资源转载自网络,如有侵权,请联系上传者或csdn删除

Global site tag (gtag.js) - Google Analytics