自己總結(jié)的APICloud便于查找小文檔

空閑的時(shí)候總結(jié)的筆記,看一下apijs,api.js 是由 APICloud 官方為您提供的輔助腳本框架,遵循主流前端框架 jQuery 的使用習(xí)慣。

api.css 所有手機(jī)上表現(xiàn)一致。

AUI 前端布局框架。

swipe.js 實(shí)現(xiàn)多屏切換、輪播圖等功能。

dot.js 使用 Web 方式顯示數(shù)據(jù)列表時(shí),使用 js 模板可以有效提高開發(fā)效率和運(yùn)行體驗(yàn),通過(guò)簡(jiǎn)單的自定義語(yǔ)法即可完成復(fù)雜布局的列表開發(fā)。

SHA1.js 算法進(jìn)行數(shù)據(jù)加密。

APICloud-rest.js 進(jìn)行數(shù)據(jù)云操作。

http://knockoutjs.com/

應(yīng)用包結(jié)構(gòu)

  • “config.xml”是配置文件,

  • “index.html”是啟動(dòng)頁(yè)面,

  • “icon”為圖標(biāo)文件目錄,

  • “l(fā)aunch”為啟動(dòng)圖片目錄

config.xml 配置文件

  • “id”: 必填,應(yīng)用ID,由云服務(wù)器自動(dòng)分配。它是該應(yīng)用的唯一標(biāo)識(shí)。

  • “version”:必填,應(yīng)用的版本號(hào)。

  • “name”:必填,應(yīng)用名稱。

  • “description”:可選,應(yīng)用簡(jiǎn)單描述信息。

  • “content”:必填,應(yīng)用運(yùn)行的起始頁(yè)。

  • “permission”:必填,權(quán)限配置。

前端開發(fā)框架

可與第三方前端框架混用,也可不用我們的框架;

  • api.css 處理不同平臺(tái)瀏覽器的默認(rèn)樣式,

  • api.js 提供最基礎(chǔ)的 JavaScript 方法,

所有方法在 window.$api 對(duì)象下。

詳細(xì)文檔見前端框架開發(fā)指南文檔https://docs.apicloud.com/Front-end-Framework/framework-dev-guide

api.js

用法$api.

.trim() 去掉字符串首尾空格;

.trimAll() 去掉字符串所有空格;

.isArray() 判斷對(duì)象是否為數(shù)組;

.addEvt((el, 事件, fn, false) 為DOM元素綁定事件;

.rmEvt() 移除DOM元素綁定的事件;

.one(el, 事件, fn, false) 為DOM元素綁定事件,事件只執(zhí)行一次;

.dom(el, CSS 選擇器) 返回首個(gè)匹配的DOM元素;

.domAll(el, CSS 選擇器) 選擇所有匹配的DOM元素;

.byId() 通過(guò)Id選擇DOM元素;

.first(el, selector) 選擇DOM元素的第一個(gè)子元素;

.last() 選擇DOM元素的最后一個(gè)子元素;

.eq( el, index) 選擇第幾個(gè)子元素;

.prev( el) 選擇相鄰的前一個(gè)元素;

.next( el) 選擇相鄰的下一個(gè)元素;

.contains(parentEl, targetEl) 判斷某一個(gè)元素是否包含目標(biāo)元素;

.closest()

.remove() 移除DOM元素;

.attr(el, name, value) 獲取或設(shè)置DOM元素的屬性;

.removeAttr(el, name) 移除DOM元素的屬性;

.hasCls(el, cls) DOM元素是否含有某個(gè)className;

.addCls(el, cls) 為DOM元素增加className;

.removeCls(el, cls) 移除指定的className;

.val(el, val) 獲取或設(shè)置常用 Form 表單元素的 value 值;

.prepend(el, html) 在DOM元素內(nèi)部,首個(gè)子元素前插入HTML字符串$api.prepend(el,'<li>hello</li>');

.append(el, html) 在DOM元素內(nèi)部,最后一個(gè)子元素后面插入HTML字符串

.before(el, html) 在DOM元素前面插入HTML字符串;

.after(el, html) 在DOM元素后面插入HTML字符串;$api.after(el,'<h1>world</h1>');

.html(el, html) 獲取或設(shè)置DOM元素的innerHTML;

.text(el, txt) 設(shè)置或者獲取元素的文本內(nèi)容;

.offset() 獲取元素在頁(yè)面中的位置與寬高,(此為距離頁(yè)面左側(cè)及頂端的位置,并非距離窗口的位置);

var offset = $api.offset(el);
var left = offset.l;
var top = offset.t;
var width = offset.w;
var height = offset.h;

.css(el,'width:800px;border:1px solid red') 設(shè)置所傳入的DOM元素的樣式,可傳入多條樣式;

.cssVal() 獲取指定DOM元素的指定屬性的完整的值,$api.cssVal(el,'width'); // 800px;

.jsonToStr() 將標(biāo)準(zhǔn)的JSON 對(duì)象轉(zhuǎn)換成字符串格式;

. strToJson () 將JSON字符串轉(zhuǎn)換成JSON對(duì)象;

.setStorage(key,value) 設(shè)置localStorage數(shù)據(jù);

.getStorage(key) 獲取localStorage數(shù)據(jù),必須與$api.setStorage()配套使用;

.rmStorage(key) 清除localStorage中與鍵名對(duì)應(yīng)的值;

.clearStorage () 清除localStorage的所有數(shù)據(jù),慎用;

.fixIos7Bar(el) 適配iOS7+系統(tǒng)狀態(tài)欄,為傳入的DOM元素增加20px的上內(nèi)邊距;

.fixStatusBar() 避免header與狀態(tài)欄重疊;

.toast('演示','延時(shí)提示框',1000) 延時(shí)提示框;

.get(url,function(ret){ alert(ret);},json) api.ajax() 方法的get方式;

.post(url,data,fnSuc,dataType) api.ajax()方法的post方式;

前端API調(diào)用

  1. 核心模塊在 window.api 對(duì)象下,默認(rèn)提供該模塊,不需要單獨(dú)引用。

  2. 擴(kuò)展模塊在相應(yīng)的模塊對(duì)象下(例如:文件系統(tǒng)模塊在fs對(duì)象下),需要require引入(var fs = api.require('fs');)。API核心模塊已經(jīng)覆蓋一般應(yīng)用的絕大部分功能。

  3. 模塊中所有方法均遵循 api.functionName(params, callback)格式,params為JSON格式,callback是Function類型,callback返回兩個(gè)參數(shù),均為JSON格式:callback(ret, err),ret處理成功信息,err處理錯(cuò)誤信息。

  4. apiready 方法在所有核心API模塊準(zhǔn)備完畢時(shí)執(zhí)行。(api文檔 https://docs.apicloud.com/Client-API/api

var systemType = api.systemType; // 比如: ios 系統(tǒng)類型

var deviceModel = api.deviceModel; // 比如: iPhone 5 設(shè)備名稱

var screenWidth = api.screenWidth; // 比如: 640 屏幕分辨率

header.style.paddingTop = api.safeArea.top + 'px'; 沉浸式
var statusBarAppearance = api.statusBarAppearance; // 比如: true 當(dāng)前應(yīng)用狀態(tài)欄是否支持沉浸式效果,布爾類型。

這個(gè)筆記為了方便查找方便,如果在用的小伙伴可以放到桌面便于查找;對(duì)前端感興趣的小白可以加企鵝群:829568767,免費(fèi)公開課 。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容