新普金娱乐网址


地理中华文明的昌盛之路

数学妈妈会看电视机为?

【转】app之YdbOnline说明文档

  • 十月 21, 2018
  • 地理
  • 没有评论

概述

YdbOnline是面向网页开发者提供的网页开发工具包。

经过动YdbOnline,网页开发者可借助YdbOnline高效地应用语音、位置等手机系统的力,同时可一直用清除缓存、扫一扫等App特有的能力,为用户提供更优质的网页体验。

这个文档面向网页开发者介绍YdbOnline如何利用以及有关注意事项。

HTML、CSS部分

JSSDK用手续

要:对Web标准的明白、浏览器差异、CSS基本功:布局、盒子模型、选择器优先级和动、HTML5、CSS3、移动端支出
技术等

步骤一:引入JS文件

在需要调用JS接口的页面引入如下JS文件,(支持https):http://static.ydbimg.com/API/YdbOnline.js
固有的接口(不建议用):http://static.ydbimg.com/API/YdbOnlineBig.js

                    例如,页面head部分插入代码:<script src="http://static.ydbimg.com/API/YdbOnline.js" type="text/javascript"></script>

 

  1. Doctype作用?
    严格模式以及混杂模式-如何触发就半栽模式,区分它们有何意义?
    (1)、<!DOCTYPE> 声明在文档中之无比前方,处于 <html>
    标签之前。告知浏览器的解析器,用啊文档类型 规范来分析是文档。
    (2)、严格模式之排版和 JS 运作模式是
    以该浏览器支持之嵩标准运行。
    (3)、在混模式被,页面以宽大的向阳后相当的道示。模拟老式浏览器的一言一行为防止站点无法工作。
    (4)、DOCTYPE不有或者格式不得法会促成文档以混合模式表现。

步骤二:初始化YDB对象

                初始化方法:var YDB = new YDBOBJ();
                //初始化之后才可以调用相应SDK方法,

 

图片 1

步骤三:调用YDB的连带措施

                例如:YDB.SetHeadBar(0);
                //设置隐藏头部标题栏的全部属性
                //特别说明:YDB的调用要放到页面尾部,或者放入页面加载完事件中
                //方法一:jquery 中:$(function(){} 括号内写你的内容
                //方法二:使用body的onload属性,onload='someFunctionsWithJssdk()'
                //方法三:window.onload=function(){//someFunctionsDoWithJssdk}//用window的onload事件,窗体加载完毕的时候
  1. 行内元素来哪些?块级元素来什么样? 空(void)元素来那些?
    (1)CSS规范规定,每个元素都生display属性,确定拖欠因素的门类,每个元素还起默认的display值,比如div默认display属性值为“block”,成为“块级”元素;span默认display属性值为“inline”,是“行内”元素。
    (2)行内元素来:a b span img input select strong(强调的话音)
    块级元素来:div ul ol li dl dt dd h1 h2 h3 h4…p
    (3)知名的空元素: 


    <img> <input> <link> <meta>鲜为人知的凡:
    <area> <base> <col> <command> <embed>
    <keygen> <param> <source> <track>
    <wbr>

  2. CSS的盒子模型?
    (1)两种植, IE 盒子模型、标准 W3C 盒子模型;IE 的content部分含有了
    border 和 pading;
    (2)盒模型: 内容(content)、填充(padding)、边界(margin)、
    边框(border).

  3. link 和@import 的区分是?
    (1)、link属于XHTML标签,而@import是CSS提供的;
    (2)、页面被加载的常常,link会同时被加载,而@import引用的CSS会等及页面被加载了还加载;
    (3)、import只在IE5之上才会辨识,而link是XHTML标签,无兼容问题;
    (4)、link方式的体制的权重 高于@import的权重.

  4. CSS 选择切合发怎么样?哪些性可以持续?优先级算法如何算?
    CSS3初添伪类有那些?

  5. 1.id选择器( # myid)
    2.类选择器(.myclassname)
    3.标签选择器(div, h1, p)
    4.相邻选择器(h1 + p)
    5.子选择器(ul < li)
    6.子孙选择器(li a)
    7.通配符选择器( * )
    8.属性选择器(a[rel = “external”])
    9.伪类选择器(a: hover, li: nth – child)

  6. 可继承: font-size font-family color, UL LI DL DD DT;
  7. 不足继承 :border padding margin width height ;
  8. 优先级就近原则,样式定义最近者为以;
  9. 载入样式以最后载入的一贯为按;

接口调用说明

有接口通过实例YDB来调用,影响页面设置的先期级如下:页面内功能>全局设置>Url配置

预先级吧:

全局定义

!important > id > class > tag
important 比 内联先期级赛

初始化全局定义

                YDB.SetGlobal(参数1,参数2,参数3,参数4,参数5,参数6,参数7,参数8,参数9,参数10,参数11);
                //参数1(HeadBar) 是否显示标题栏,0为隐藏,1为显示
                //参数2(DragRefresh) 是否开启下拉刷新,0为关闭,1为开启
                //参数3(HeadBarExceptionList) 标识为隐藏顶部导航的例外(相反与HeadBar设置)名单(显示标题栏,参数为URL的字符串,多个URL以逗号分隔)页面列表
                //参数4(DragRefreshExceptionList) 下拉刷新例外(相反与DragRefresh
                //设置)名单(页面执行下拉刷新,参数为URL的字符串,多个URL以逗号分隔)   
                //参数5 (CashTime) 缓存时长,0为不缓存,其他整形数值配合CasgTimeUnit组成缓存时长
                //参数6 (CashTimeUnit) 缓存时间单位,小写字母,m/h/d  分别代表分钟/小时/天 ,字串类型   
                //参数7 (BackKeyUseType) 安卓手机返回键功能,0点击返回上级页面,1点击返回顶级页面
                //参数8 (ShowCloseButton) 是否显示关闭按钮,0隐藏,1显示
                //参数9 (CloseText) 自定义关闭按钮显示文字,''空字串则使用默认的“关闭”
                //参数10(ClearCookie) 关闭应用是否清除cookie,0不清除,1清除
                //参数11(BgColor) 设置App原生底色(App默认底色为#efefef),使用16进制颜色值设置,比如:#ffcc00

备注:全局属性优先级低于一些页面的优先级,所有多状态参数为int类型

CSS3初长伪类举例:

APP界面控制类

p:first-of-type 选择属于其父元素的首单 <p> 元素的每个 <p>
元素。
p:last-of-type 选择属于该父元素的末段 <p> 元素的每个 <p>
元素。
p:only-of-type 选择属于其父元素唯一的 <p> 元素的每个 <p>
元素。
p:only-child 选择属于其父元素的绝无仅有子元素的每个 <p> 元素。
p:nth-child(2) 选择属于该父元素的第二单子元素的每个 <p> 元素。
:enabled、:disabled 控制表单控件的剥夺状态。
:checked,单选框或复选框被选中。

藏/显示顶部标题栏

                    YDB.SetHeadBar(0);
                   //参数说明:显示隐藏当前页的顶部导航菜单,0为隐藏,1为显示
  1. 怎么居中div,如何在中一个扭转元素?
    被div设置一个小幅,然后上加margin:0 auto属性

隐藏底部菜单栏

                    YDB.SetMenuBar(0);
                   // 参数说明:显示隐藏底部菜单栏,0为隐藏,1为显示

适用模板:有导航模板

备注:

启关闭下拉刷新

                    YDB.SetDragRefresh(0);
                    // 参数说明:设置开启关闭下拉刷新功能,0为关闭,1为开启

备注:

div{width:200px;margin:0 auto;}

暗藏/显示右侧菜单

                    YDB.SetMoreButton(0);
                   // 参数说明:设置是否显示右侧菜单按钮,0为关闭右侧菜单并隐藏右侧菜单按钮,1为显示右侧菜单按钮

备注:

置身中一个生成元素
规定容器的方便高 宽500 高 300 的重叠
设置层的异乡距

导航菜单动态隐藏

                    YDB.MenuBarAutoHide(0);
                    // 参数说明:设置是否开启菜单动态隐藏,0关闭,1开启
                    // 如果开启此功能,滑动屏幕动态隐藏显示菜单、标题栏

适用模板:有导航模板

备注:

.div {
Width:500px ; height:300px;//高度可以不设
Margin: -150px 0 0 -250px;
position:relative;相对定位
background-color:pink;//方便看效果
left:50%;top:50%;
}

回到前一页面

                    YDB.GoBack();
                    // 返回前一页面

备注:

  1. 浏览器的本分别是呀?经常遇到的浏览器的兼容性有哪?原因,解决智是啊,常用hack的技艺

  2. IE浏览器的内核Trident、
    Mozilla的Gecko、google的WebKit、Opera内核Presto;

  3. png24也的图样在iE6浏览器上起背景,解决方案是做成PNG8.
  4. 浏览器默认的margin和padding不同。解决方案是加一个大局的*{margin:0;padding:0;}来统一。
  5. IE6双边距bug:块属性标签float后,又发出暴行的margin情况下,在ie6显示margin比设置的不可开交。
    浮动ie产生的双料加倍距离 #box{ float:left; width:10px; margin:0 0 0
    100px;}

回前一页面时实行的操作

                    YDB.IsReloadPreviousPage(operation);
                   //参数说明,  执行返回前一页面时的操作,operation当传值为1时,刷新前一页面,传值为前一页面的js方法名时,执行js方法。
                   //示例:<div  onclick="gobackprevious();">返回前一页面</div>
                   //function gobackprevious() { var YDB = new YDBOBJ();  YDB.IsReloadPreviousPage('javascript:get_user_status();'); YDB.GoBack(); }
                   //其中get_user_status()是您前一个页面的js方法名,返回前一页面时会执行您前一页面中的get_user_status()方法。

备注:此功能就适用于开启云开发插件的使用。

这种情况之下IE会产生20px的相距,解决方案是于float的价签样式控制中进入
——display:inline;将该转化为行内属性。(此标记只有ie6会识别)
逐步进识别的方
典礼,从整体中慢慢散部分。

上下一页面执行之操作

                    YDB.IsReloadNextPage(operation);
                   //参数说明, 进入到下一页面时, operation当传值为1时,刷新下一页面,传值为下一页面的js方法名时,执行js方法。
                   //示例 :var YDB = new YDBOBJ();  YDB.IsReloadNextPage('reload_page();');
                   //其中reload_page()是您下一个页面的js方法名,进入下一页面时会执行您下一页面中的reload_page()方法。

备考:此功效只适用于IOS。

先是,巧妙的使用“\9”这同样符号,将IE游览器从所有情况遇分别出来。
跟着,再次用“+”将IE8和IE7、IE6分离开来,这样IE8已经独立识别。

关/开启安卓硬件加速

                    YDB.SetHardware(state);
                   //参数说明, state 关闭/开启安卓硬件加速,0为关闭,1为开启。
                   //示例 :var YDB = new YDBOBJ();  YDB.SetHardware(0);//关闭硬件加速

备注:此意义就适用于安卓。

css

归来顶级页面

                    YDB.GoTop();
                    // 返回顶级页面(跳转至此导航节点的起始页面)

备注:

.bb{
background-color:#f1ee18;/*所有识别*/
.background-color:#00deff\9; /*IE6、7、8识别*/
+background-color:#a200ff;/*IE6、7识别*/
_background-color:#1e0bd1;/*IE6识别*/
}

调出右侧菜单

                    YDB.ShowTopRightMenu();
                    // 调出右侧菜单

备注:

  • IE下,可以使用得常规性之方来取自定义属性,也足以利用getAttribute()获取自定义属性;Firefox下,只能动用getAttribute()获取自定义属性。解决方法:统一通过getAttribute()获取自定义属性。

  • IE下,even对象来x,y属性,但是尚未pageX,pageY属性;
    Firefox下,event对象来pageX,pageY属性,但是没x,y属性.

  • (条件注释)缺点是以IE浏览器下或者会见增多额外的HTTP请求数。

  • Chrome 中文界面下默认会将低于 12px 的公文强制按 12px 显得,
    可经投入 CSS 属性 -webkit-text-size-adjust: none; 解决.
    越链接访问之后hover样式就未起了
    被点击访问了的超链接样式不在颇具hover和active了解决智是移CSS属性的排顺序:

一味页面设置底色

                    YDB.SetBgColor(BgColor);
                    //设置App原生底色,使用16进制颜色值设置,比如:#ffcc00

备注:

L-V-H-A : a:link {} a:visited {} a:hover {} a:active {}

亮/隐藏返回按钮

                    YDB.SetReturnButtonMode(showmode);
                    //参数说明,showmode  int类型,当传值为1时,显示返回按钮,传值为0 则隐藏返回按钮。

备注:

  1. html5、CSS3生什么新特点、移除了那些元素?如何处理HTML5初标签的浏览器兼容问题?如何区分
    HTML 和 HTML5?
    HTML5 现在曾不是 SGML
    的子集,主要是有关图像,位置,存储,地理定位等功能的增多。

  2. 绘画 canvas 元素
    用于媒介回放的 video 和 audio 元素
    本土离线存储 localStorage
    长期积存数据,浏览器关闭后数不丢掉;sessionStorage
    的多少以浏览器关闭后活动删除
    语意化更好之始末元素,比如 article、footer、header、nav、section
    表单控件,calendar、date、time、email、url、search
    CSS3贯彻圆角,阴影,对文加特效,增加了又多的CSS选择器 多背景
    rgba
    新的技巧webworker, websockt, Geolocation
    移除的元素
    纯表现的因素:basefont,big,center,font, s,strike,tt,u;
    本着可用性产生负面影响的元素:frame,frameset,noframes;

  3. 大凡IE8/IE7/IE6支持通过document.createElement方法来的标签,可以行使就同特征深受这些浏览器支持HTML5初标签,
    浏览器支持新签后,还需丰富标签默认的样式:
  4. 自然最好好之法门是直使用成熟的框架、使用最多之是html5shim框架

打开新窗口

                     YDB.OpenNewWindow();
                    //等同于a标签中的target="_blank"。
                    //打包之后的应用需使用YDB.OpenNewWindow()方法代替target="_blank"。                    
                    //示例:<a href="new.html" onclick="OpenNewWindow();">新窗口打开</a>
                    //function OpenNewWindow(){var YDB = new YDBOBJ(); YDB.OpenNewWindow();}

备注:

乍窗口动画效果

                     YDB.AnimationWay("entranceway","exitway");
                    //参数说明:entranceway:页面入场方式,可选参数:0 从右往左 1 从下往上 exitway:页面出场方式,可选参数:0 从左往右 1 从上往下。
                    //当页面中使用YDB.OpenNewWindow()打开新窗口时,默认动画入场方式为(0)从右往左,出场方式为(0)从左往右。
                      仅支持YDB.AnimationWay("0","0") 和 YDB.AnimationWay("1","1")                 

备注:此作用要配合开拓新窗口使用。

<!–[if lt IE 9]>
<script> src=”http://html5shim.googlecode.com/svn/
trunk/html5.js”</script>
<![endif]–>

改IOS状态栏文字颜色

                     YDB.SetStatusBarStyle(fontcolor);
                    //参数说明:fontcolor:文字颜色,可选参数:0 白色 1 黑色 
                    //示例:YDB.SetStatusBarStyle(1);修改IOS状态栏颜色为黑色

备考:此功效就适用于IOS。

  1. 公怎么来实现页面设计图,你看前者应该怎么胜质量就工作? 一个满屏
    品 字布局 如何统筹?

  2. 首先划分成头部、body、脚部;。。。。。

  3. 实现力量图是极度中心的办事,精确到2px;
    暨设计师,产品经理的沟通与项目之涉企
    抓好的页面结构,页面重构和用户体验
    拍卖hack,兼容、写起美丽之代码格式
    对服务器的优化、拥抱 HTML5。

  4. 不时以的仓库发生哪些?常用之前端开发工具?开发了啊用或机件?
    -*
    使用率较高的框架来jQuery、YUI、Prototype、Dojo、Ext.js、Mootools等。尤其是jQuery,超过91%。
    轻量级框架来Modernizr、underscore.js、backbone.js、Raphael.js等。
    (理解这些框架的效用、性能、设计原理)

  5. Sublime Text 、Eclipse、Notepad、Firebug、HttpWatch、Yslow。

  6. 都会选择插件,汽车型号选择插件、幻灯片插件。弹出层。(写过开源程序,加载器,js引擎更好)
    JavaScript原型,原型链 ? 有什么特色?
  7. 原型对象啊是日常的靶子,是目标一个自带隐式的 proto 属性,原型为闹或产生谈得来之原型,如果一个原型对象的原型不也null的言语,我们就算叫原型链。
  8. 原型链是出于一些据此来继承与共享属性的对象成的(有限的)对象链。
  9. JavaScript的多寡对象有那些属性值?
    writable:这个特性之价是否可以转。
    configurable:这个特性的部署是否好去除,修改。
    enumerable:这个特性是否会在for…in循环中遍历出来要于Object.keys中列举出。
    value:属性值。
  10. 当我们需要一个特性的经常,Javascript引擎会先行押脚下目标被是不是有这特性,
    如果没有的话,就见面寻找他的Prototype对象是不是出是特性。

是不是稳定底部导航

                     YDB.IsFixedBottomMenu(IntState);
                   //此功能为全局功能,仅调用一次即可。
                    //参数说明:IntState:是否固定,可选参数:0 固定(当页面有输入框等调用键盘的操作时,底部导航不会跟随键盘移动) 1 不固定(当页面有输入框等调用键盘的操作时,底部导航会跟随键盘移动),默认效果为不固定。 
                    //示例:YDB.IsFixedBottomMenu(0);设置底部导航不跟随键盘移动

备注:此功效只适用于安卓。

设置APP字体大小

                     YDB.SetFontSize();
                    //调用此方法可设置APP字体大小,可以选大小有:小号字、中号字、标准字、大号字、特大号字,调用方法之后在APP中直接选择即可。
                    //示例:var YDB = new YDBOBJ();YDB.SetFontSize();

备考:如调用方法没有生效,请复转应用后用。

function clone(proto) {
function Dummy() { }
Dummy.prototype = proto;
Dummy.prototype.constructor = Dummy;
return new Dummy(); //等价于
Object.create(Person);
}
function object(old) {
function F() {};
F.prototype = old;return new F();
}
var newObj = object(oldObject);

调屏幕亮度

                     YDB.SetBrightness(percent);
                    //调用此方法可调整屏幕亮度。
                    //参数说明:percent可选值为0到1,其中0最暗,1最亮。
                    //示例:var YDB = new YDBOBJ();YDB.SetBrightness("0.6");设置屏幕亮度为60%;

备注:如调用方法无生效,请复转应用后动。

  1. 排有display的值,说明他俩之打算。position的价值,
    relative和absolute定位原点是?
    1 block 象块类元素一样显示。
    none 缺省值。向行内元素类型一样显示。
    inline-block 象行内元素一样显示,但那情象块类型元素一样显示。
    list-item 象块类元素一样显示,并加加样式列表标记。
    2

  2. absolute
    转变绝定位的要素,相对于 static 定位以外的第一独父元素进行稳定。

  3. fixed (老IE不支持)
    变更绝定位的素,相对于浏览器窗口进行定点。
  4. relative
    扭转相对固化的元素,相对于那个正常职务展开一定。
  5. static 默认值。没有一定,元素出现在例行的流中
    -(忽略 top, bottom, left, right z-index 声明)。
  6. inherit 规定由父元素继承 position 属性的价。

  7. 页面重构怎么操作?
    编辑
    CSS、让页面结构还合理化,提升用户体验,实现理想的页面效果和升级换代性。

  8. 语义化的喻?
    html语义化就是让页面的情节结构化,便于对浏览器、搜索引擎解析;
    在没有样式CCS情况下呢以同一种植文档格式显示,并且是好看的。
    觅引擎的爬虫依赖让标记来规定上下文和一一显要字之权重,利于 SEO。
    比方阅读源代码的人对网站再度易于用网站分块,便于阅读维护理解。

  9. HTML5的离线储存?
    localStorage 长期积存数据,浏览器关闭后数未丢;
    sessionStorage 数据在浏览器关闭后自动删除。

  10. 干什么要初始化CSS样式。
    盖浏览器的兼容问题,不同浏览器对有些标签的默认值是差之,如果没有针对CSS初始化往往会面世浏览器中的页面显示差异。
    自然,初始化样式会指向SEO有早晚的影响,但鱼和熊掌不可兼得,但力求影响最为小的情景下初始化。
    最好简便的初始化方法就是: {padding: 0; margin: 0;} (不建议)

点击全屏时是不是横屏

                     YDB.IsShowLandcape(showMode);
                    //参数说明:参数 showMode,类型 int, 0 不横屏,1 横屏。
                    //示例:var YDB = new YDBOBJ();YDB.IsShowLandcape(0);//点击全屏时不横屏

备注:

淘宝之体制初始化:

横屏竖屏模式

                     YDB.ScreenOrientation(showMode);
                    //参数说明:参数 showMode,参数类型 int,0竖屏,1自适应,2横屏。
                    //示例:var YDB = new YDBOBJ();YDB.ScreenOrientation(2);//开启横屏模式

备注:

body, h1, h2, h3, h4, h5, h6, hr, p, blockquote,
 dl, dt, dd, ul, ol, li, pre, form, fieldset, legend,
 button, input, textarea, th, td { margin:0; 
padding:0; }
body, button, input, select, textarea {
 font:12px/1.5tahoma, arial, \5b8b\4f53; }
h1, h2, h3, h4, h5, h6{ font-size:100%; }
address, cite, dfn, em, var { font-style:normal;
 }
code, kbd, pre, samp { font-family:couriernew,
 courier, monospace; }
small{ font-size:12px; }
ul, ol { list-style:none; }
a { text-decoration:none; }
a:hover { text-decoration:underline; }
sup { vertical-align:text-top; }
sub{ vertical-align:text-bottom; }
legend { color:#000; }
fieldset, img { border:0; }
button, input, select, textarea { font-size:100%; }
table { border-collapse:collapse; border-
spacing:0; }

APP系统功能相近

  1. (写)描述一段语义的html代码吧。

扫一扫

(HTML5蒙新增加的重重签(如:<article>、<nav>、<header>和<footer>等)

无论返回值方法

                    YDB.Scan();
                    // 参数说明:此方法无参数,直接调用扫一扫功能,扫描结果由App自行处理

备注:

即便是根据语义化设计基准)

有归值方法

                    YDB.GetScan("你事先准备好的方法名");
                    //参数说明:web处理扫描结果,传入返回值处理方法名,在这个方法中处理扫描字串,
                    //例如,您定义的方法为 function DoWithScan(outValue){}; 
                    //那么,调用SDK可以这样写:YDB.GetScan("DoWithScan");

备注:

< div id=”header”>
< h1>标题< /h1>
< h2>专注Web前端技术< /h2>
< /div>

分享

                    YDB.Share('标题','简介','图片路径','链接地址','回调方法');
                    // 参数说明:分别传入分享信息的标题、简介、图片路径、URL链接地址、分享回调方法名(接收分享结果的json字串)
                    //示例:var YDB = new YDBOBJ(); YDB.Share("测试分享标题", "测试分享标题内容", "http://static.ydbimg.com/Images/frontimg/logo.png", "http://www.yundabao.cn/","Shareback");
                    //回调方法:function Shareback(state) {alert("分享结果:" + JSON.stringify(state)); } 
                    //分享结果的json数据示例:{"platform":"Wechat","state":"success"},其中platform中的Wechat代表微信好友(其他分享平台分别是WechatMoments(微信朋友圈)、SinaWeibo(新浪微博)、QQ(QQ)、Qzone(QQ空间)、ShortMessage(短信)),state的三种返回结果:success、fail、cancel
                    //提示:如果您使用QQ分享回调的同时开启了QQ登录插件,QQ登录的插件参数APP ID需跟分享设置里的腾讯开放平台APP ID参数保持一致。微信分享回调需在分享设置页面开启微信分享回调才可正常使用。            

备考:
原YdbOnline方法YDB.Share(‘标题’,’简介’,’图片路径’,’链接地址’)可承采取。

语义 HTML 具有以下特征:

单个平台分享

                    YDB.SingleShare('标题','简介','图片路径','链接地址','要分享的平台','回调方法');
                    // 参数说明:分别传入分享信息的标题、简介、图片路径、URL链接地址、要分享的平台、分享回调方法名(接收分享结果的json字串)
                                         其中'要分享的平台'可选参数:0、1、2、3、4、5   说明:0微信好友 1微信朋友圈 2新浪微博 3QQ 4QQ空间 5信息
                    //示例:var YDB = new YDBOBJ(); YDB.SingleShare("测试分享标题", "测试分享标题内容", "http://static.ydbimg.com/Images/frontimg/logo.png", "http://www.yundabao.cn/","1","SingleShare");
                    //回调方法:function SingleShareback(state) {alert("分享结果:" + JSON.stringify(state)); }
                    //分享结果的json数据示例:{"platform":"Wechat","state":"success"},其中platform中的Wechat代表微信好友(其他分享平台分别是WechatMoments(微信朋友圈)、SinaWeibo(新浪微博)、QQ(QQ)、Qzone(QQ空间)、ShortMessage(短信)),state的三种返回结果:success、fail、cancel
                    //提示:如果您使用QQ分享回调的同时开启了QQ登录插件,QQ登录的插件参数APP ID需跟分享设置里的腾讯开放平台APP ID参数保持一致。微信分享回调需在分享设置页面开启微信分享回调才可正常使用。

备注:

文包裹在要素被,用以反映内容。例如:

理清缓存

                    YDB.ClearCache();
                    //不需要参数,调用清理缓存的系统方法

备注:

段包含在 <p> 元素中。

收获装备信息

                    YDB.GetDeviceInformation("处理返回值的函数名");
                    //参数说明:您需要定义处理返回值函数,例如 function DoWithDeviceInformation(info){/*do something with info*/};
                    //那么,调用SDK可以这样写:YDB. GetDeviceInformation ("DoWithDeviceInformation")

备注:

逐条表包含在<ol>元素中。

气泡提醒

                    YDB.PopUp(index,count);
                    //参数说明:index 字符串类型,设定气泡所在导航索引,从0开始,多个索引以逗号分隔; 
                    //count 字符串类型,设定气泡中显示数量的数字,多个数量以逗号分隔,跟索引数量要匹配。
                    //当count设置为零,则表示当前索引不显示气泡!
                    //示例:YDB.PopUp("0","2");//表示在第一个导航处带数字2的气泡提醒

备注:

从其它来源引用的重型文字块包含在<blockquote>元素中。

上传图片、拍照上传功能

                    此功能不需要JS支持,页面中只要包含上传组件即可,在用户点击上传的时候,App会自动启动选取相册中图片文件或者调用拍照功能。

备注:

HTML 元素不克用作语义用途以外的别样目的。例如:
<h1>包含标题,但绝不用于加大文本。
<blockquote>包含大段引述,但并非用于文书缩进。
空白段落元素 ( <p></p> ) 并非用于跳行。
文件并无直包含其他样式信息。例如:
免以 <font> 或 <center> 等格式标记。
恍如还是 ID 中莫引用颜色还是岗位。

图预览

                    YDB.ImageViewState(state);
                    //参数说明:如果要开启图片预览功能,需要在相应页面调用此功能,当state设置为0时关闭图片预览功能;当state设置为1时,开启图片预览功能,
                    //同时,页面中在需要预览功能支持的图片超链接进行如下设置:
                    //需要在图片外层img标签增加属性Is9VImg="true",当Is9vImg值为true时,点击图片会启动App的图片浏览器。
                    //需要注意的是img的图片路径src必须是可以直接访问的带http/https的网络路径。

备注:

  1. absolute的containing block计算方式以及正常流动发生什么不同?

脱安卓APP

                    YDB.ExitApp();          
                    //退出安卓APP

备注:此作用只适用于安卓。

19 .position跟display、margin
collapse、overflow、float这些特点相互叠加后会咋样?

采取浏览器打开

                    YDB.OpenWithSafari("openurl");          
                    //参数openurl:需要在浏览器中打开的网址  
                    //示例:YDB.OpenWithSafari("http://m.baidu.com");;         

备考:此功能适用于安卓同IOS。

  1. 针对BFC规范的明白?(W3C CSS 2.1
    规范着之一个概念,它控制了元素如何对其内容开展一定,以及跟其他因素的关
    系和相互作用。)

  2. iframe有那些缺点?

  3. iframe会阻塞主页面的Onload事件;

  4. iframe和主页面共享连接池,而浏览器对相同域的连日有限量,所以会见影响页面的彼此加载。
    应用iframe之前要考虑当下有限只毛病。如果用利用iframe,最好是由此javascript
    动态为iframe添加src属性值,这样可好绕开以上两单问题。

  5. css定义之权重

博个推ClientID

                    YDB.GetClientIDOfGetui("doWithCIDFun");          
                    //参数说明:传入返回值处理方法名,在这个方法中处理从个推申请到的cid
                    //例如,您定义的方法为
                    // function doWithCIDFun (cid){/*do something with cid*/}; 
                    //那么,调用SDK可以这样写:YDB.GetClientIDOfGetui("doWithCIDFun");

备考:此功能适用于由来关系,并且以独推后台配置了证明信息,准备自主整合个推接口的用户,尤其适合上污染了IOS上架证书的用户(目前立内少未支持IOS上架证书应用的单推动推送)。

以下是权重的平整:标签的权重为1,class的权重为10,id的权重为100,以下例子是现身说法各种定义之权重值:

检测IOS是否安装微信客户端

                     YDB.isWXAppInstalled("处理返回值的函数名");
                    //参数说明:您需要定义处理返回值函数,例如 function installstate(state){/*state返回的是微信客户端安装状态:0未安装 1已安装*/};
                    //那么,调用SDK可以这样写:YDB.isWXAppInstalled("installstate")

备注:此插件才适用于IOS

/*权重为1*/
div{
}
/*权重为10*/
.class1{
}
/*权重为100*/
#id1{
}
/*权重为100+1=101*/
#id1 div{
}
/*权重为10+1=11*/
.class1 div{
}
/*权重为10+10+1=21*
/.class1 .class2 div{
}

增强型上传图片

                     YDB.UploadImage(receiveUrl, showFun, UserName, Key, IsCut, Width, Height);
                    //参数说明:receiveUrl 接收并处理图片的页面, showFun 处理上传图片返回路径的函数名, UserName 用户唯一标识(UserName可自定义,名称和值之间需用冒号‘:’隔开,例:User:lisi),
                                Key 用户密码(Key可自定义,名称和值之间需用冒号‘:’隔开,例:PassWd:111111), IsCut 是否裁剪图片(0关闭裁剪,1开启裁剪), Width 所需图片宽度, Height 所需图片高度

备注:

倘权重相同,则最后定义的体制会自作用,但是相应避免这种情景出现

APP插件类

  1. eval是召开什么的?
    其的功力是拿相应之字符串解析成JS代码并运行;
    避使用eval,不安全,非常耗性能(2次,一涂鸦解析成js语句,一涂鸦施行)。

  2. 写一个通用的风波侦听器函数

语音识别

                   YDB.SpeechRecognition("处理语音识别结果函数名");
                   //参数说明:传入返回值处理方法名,在这个方法中处理扫描字串
                   //例如,您定义的方法为
                   // function DoWithSpeechRecognition (outValue){/*do something with outValue*/}; 
                   //那么,调用SDK可以这样写:YDB.SpeechRecognition("DoWithSpeechRecognition");

备考:此功效要打开语音插件之后才可使用。

地理位置

                   YDB.GetGPS("处理返回坐标信息的方法名");
                   // 您需要定义一个处理函数
                   //例如:function DoWithGPS (la,lo){//dosomething with la,lo }; 
                   //那么,调用SDK可以这样写:YDB.GetGPS(“DoWithGPS”);

备注:开通定位插件并安排相关参数后,才可采用是意义。

markyun.Event = {
// 页面加载完成后
readyEvent : function(fn) {
if (fn==null) {
fn=document;
}
var oldonload = window.onload;
if (typeof window.onload != ‘function’) {
window.onload = fn;
}
 else {
window.onload = function() {
oldonload();fn();
};
}
},
// 视能力分别使用dom0||dom2||IE方式 来绑定事件
// 参数: 操作的元素,事件名称 ,事件处理程序
addEvent : function(element, type, handler) {
if (element.addEventListener) {
//事件类型、需要执行的函数、是否捕捉
element.addEventListener(type, handler, false);
} else if (element.attachEvent) {
element.attachEvent(‘on’ + type, function() {
handler.call(element);
});
} else {e
lement[‘on’ + type] = handler;}},// 移除事件
removeEvent : function(element, type, handler) {
if (element.removeEnentListener) {
element.removeEnentListener(type, handler, false);
} else if (element.datachEvent) {
element.detachEvent(‘on’ + type, handler)
;} else {
element[‘on’ + type] = null;
}
},
// 阻止事件 (主要是事件冒泡,因为IE不支持事件捕获)
stopPropagation : function(ev) {
if (ev.stopPropagation) {
ev.stopPropagation();
} else {
ev.cancelBubble = true;
}
},
// 取消事件的默认行为
preventDefault : function(event) {
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
},
// 获取事件目标
getTarget : function(event) {
return event.target || event.srcElement;
},
// 获取event对象的引用,取到事件的所有信息,确保随时能使用
event;
getEvent : function(e) {
var ev = e || window.event;
if (!ev) {
var c = this.getEvent.caller;
while (c) {
ev = c.arguments[0];
if (ev && Event == ev.constructor) {
break;
}
c = c.caller;
}
}
return ev;
}
};

实时地理位置

  1. 99%之网站都急需为重构是那么本书上勾画的?

  2. 网站重构:应用web标准进行统筹(第2版本)

  3. 好家伙让优雅降级和渐进增强?
    大雅降级:Web站点在具有最新浏览器中都能健康工作,如果用户使用的凡不合时宜浏览器,则代码会检查为确认其是不是会正常干活。由于IE独特的盒模型布局问题,针对不同版本的IE的hack实践过优雅降级了,为那些无法支撑力量的浏览器增加候选方案,使的于旧式浏览器上因某种形式降级体验也未必完全失去效.

开实时定位

                    YDB.OpenGPS(userid);
                    //参数说明:userid 用户唯一身份id,用于传递用户身份信息,
                    //需要在后台系统设置中设置,提交间隔,抓取间隔,接收地址等几项参数,
                    //接收地址用于接收来自应用post提交的数据(post参数名:gps,值示例:[{"userid":"888","time":"2015-05-06    16:10:45","lon":"113.574804","lat":"34.807128"},{"userid":"888","time":"2015-05-06    16:10:50","lon":"113.574804","lat":"34.807128"}])

备考:开通定位插件并安排相关参数后,才可运这个作用。

渐渐进增强:从为抱有浏览器支持之基本功能开始,逐步地抬高那些只有新型浏览器才支撑之机能,向页面增加无害于基础浏览器的额外样式与职能的。当浏览器支持时,它们会自行地展现出来并发挥作用。

关门实时定位

                    YDB.CloseGPS();
                    // 不需要参数,调用此方法停止实时定位

备考:开通定位插件并布置相关参数后,才不过使用这个作用。

  1. Node.js的适用场景
    高并发、聊天、实时信息推送

  2. WEB以由服务器主动推送Data到客户端起那些方式?
    html5 websoket
    WebSocket通过Flash
    XHR长时间总是
    XHR Multipart Streaming
    不可见的Iframe
    <script>标签的丰富时总是(可跨域)

支付宝出

                    YDB.SetAlipayInfo(ProductName, Desicript, Price, OuttradeNo);
                    //参数说明:ProductName 名称, Desicript 描述, Price 支付金额, OuttradeNo 订单编号(64个字符以内、可包含字母、数字、下划线,需保证在商户端不重复)

备注:开通支付宝支付插件并布置相关参数后,才不过利用是意义。

JavaScript部分

微信支付

                    YDB.SetWxpayInfo(ProductName, Desicript, Price, OuttradeNo,attach);
                    //参数说明:ProductName 名称, Desicript 描述, Price 支付金额, OuttradeNo 订单编号(32个字符内、可包含字母),attach 附加参数。
                    //支付结果页面中OuttradeNo,attach将以Querstring的方式传递

备考:开通微信支付插件并部署相关参数后,才不过下此功效。

要点:
数据类型、面向对象、继承、闭包、插件、作用域、跨域、原型链、模块化、自定义事件、异步装载回调、模板引擎、Nodejs等。js的几种多少类:number,string,boolean,object,undefined

微信登录

                    YDB.WXLogin(returnDataType, accessUrl);                
                    //参数returnDataType: 返回值类型
                    //参数accessUrl: accessUrl(必须为带http或https的网络路径)接收返回值的url,可附加Url参数,用来判断用户登录状态以及设置用户信息等操作
                    //参数影响:
                    //当returnDataType为0时,accessUrl在post时接收到参数为:token (字符类型)、openid (字符类型)、sign (Md5加密字串),get时接收到的参数为openid (字符类型)
                    //当returnDataType为1时,accessUrl在post时接收到参数为:token (Json字串)、resault (Json字串)、openid (字符类型)、sign (Md5加密字串),get时接收到的参数为openid (字符类型)

备考:此插件需要开通微信登录插件并部署相关参数,微信登录整体流程:调用js_sdk方法–>呼出微信登录窗口–>登录验证通过–>手机端post数据给accessUrl(post参数:token,openid,sign等),accessUrl
处理接收至的数量,并记用户登录状态 –>
App跳反至accessUrl(get参数:openid) –>
accessUrl根据以前储存的音处理后续跳转等操作
,其中sign为辅助性的安全校验参数,sign=MD5(传递参数&链{SignKey}),SignKey在“服务效果”->”其他力量”->”安全码设置”中布置。
友好提示:对于iOS应用,考虑到iOS应用商店对指南中之相干规定,建议开发者接入微信登录时,先检测用户手机是否曾安装微信客户端(使用sdk中isWXAppInstalled函数
),对莫设置之用户隐藏微信登录按钮,只提供其他登录方式(比如手机号报登录、游客登录等)。

js的常见内置对象类:Date,Array,Math、Number、Boolean、String、Array、RegExp、Function…通常可以做一些小练习来判断TA的品位,js
虽然非常灵活,但是实际的代码和实现方式会反映出一个总人口之全局观,随着代码规模的提高,复杂度增加,如何客观划分模块实现效益及接口的力较关键。(下面例题)

获取Wifi的ssid

                     YDB.GetWifiSsid("处理返回值的函数名");
                    //参数说明:您需要定义处理返回值函数,例如 function DoWithWifiSsid(info){/*info返回的是您当前连接wifi的ssid*/};
                    //那么,调用SDK可以这样写:YDB.GetWifiSsid("DoWithWifiSsid")

备注:开通获取Wifi的ssid插件之后,才可应用这功能。

[“1″, “2”, “3”].map(parseInt)
[typeof null, null instanceof Object]
[ [3,2,1].reduce(Math.pow), [].reduce(Math.pow)] ]
var val = ‘smtg';
console.log(‘Value is ‘ + (val === ‘smtg’) ? ‘Something’ : ‘Nothing’);

指纹认证

                     YDB.UseTouchID("DoWithTouchID","LoginUrl","AccessTitle","FallbackTitle");
                    //参数说明:DoWithTouchID:您需要定义处理返回值函数,例如 function DoWithTouchID(info){/*info中返回值 0是验证失败,1是验证成功*/};
                                     LoginUrl:指纹验证失败时,用户提供的带有其他验证方式的url地址。
                                  AccessTitle:提示文字,用来向用户说明使用指纹验证的目的。
                                FallbackTitle:指纹验证失败时,提示框的文字提示,默认提示为“输入密码”。
                    //示例:YDB.UseTouchID("DoWithTouchID","http://你的验证url地址","指纹验证","其他验证方式")

备注:开通指纹认证插件后才不过运这个作用,此作用就适用于IOS。

1.创一个目标

博健康步数

                     YDB.GetHealthStep("处理返回值的函数名");
                    //参数说明:您需要定义处理返回值函数,例如 function DoWithHealthStep(info){/*info中返回的是您当前的健康步数*/};
                    //那么,调用SDK可以这样写:YDB.GetHealthStep("DoWithHealthStep")

备注:开通获取健康步数插件后才不过应用这功能,此功能适用于安卓与IOS。

function Person(name, age) {
this.name = name;
this.age = age;
this.sing = function() {
 alert(this.name) }
}

QQ登录

                    YDB.QQLogin(accessUrl);          
                    //参数accessUrl: accessUrl(必须为带http或https的网络路径)接收返回值的url,可附加Url参数,用来判断用户登录状态以及设置用户信息等操作
                    //接收参数:
                    //accessUrl接收到参数为:openid(用户唯一标识)字符类型、token 字符类型、userinfo(用户昵称、用户头像等基本信息) Json字串

备注:开通QQ登录插件并配备相关参数后,才不过运这功能。

2.谈谈This对象的亮。
this是js的一个要字,随着函数使用场所不同,this的值会发生变化。
但是究竟起一个尺度,那便是this指的是调用函数的不得了目标。
this一般情形下:是大局对象Global。
作为艺术调用,那么this就是依靠者目标
3.事件、IE与火狐的事件机制起啊界别? 如何堵住冒泡?

融云即时通讯

  1. 咱俩在网页中的某某操作(有的操作对应多只事件)。例如:当我们点击一个按钮就会生出一个风波。是得为
    JavaScript 侦测到的表现。
  2. 事件处理机制:IE是事件冒泡、火狐是 事件捕获;
  3. ev.stopPropagation();
    4.呀是闭包(closure),为什么要因此?

融云用户登录

                    YDB.RongyunLogin(userId, nickName, token, portraitUri);          
                    //参数说明:userId(字符类型) 用户id,nickName(字符类型) 用户昵称,portraitUri(字符类型) 用户头像,token(字符类型) 用户token(token在服务器端注册用户的时候获取,可参见 Demo 或者参照融云相关服务器端开发文档获取token方法)。

备注:开通融云即时通讯插件并安排相关参数后,才可采取是意义。

待完善

打开融云私聊界面

                    YDB.InitiateChat(otheruserId, nickName, portraitUri);          
                    //参数说明:otheruserId(字符类型) 对方用户id,nickName(字符类型) 对方昵称,portraitUri(字符类型)对方头像。

备注:开通融云即时通讯插件并配备相关参数后,才不过采用是意义。

履行say667()后,say667()闭包内部变量会是,而闭包内部函数的内变量不见面满怀于.使得Javascript的渣回收机制GC不会见吊销say667()所占的资源,因为say667()的中间函数的履得依赖say667()中的变量。这是本着闭包作用的好直白的描述.

开拓融云会话列表

                    YDB.SessionList();          
                    //参数说明:不需要传递参数。

备注:开通融云即时通讯插件并配置相关参数后,才不过应用这功能。

function say667() {
// Local variable that ends up within closurevar num = 666;
var sayAlert = function() { alert(num); }
num++;
return sayAlert;
}
var sayAlert = say667();
sayAlert()//执行结果应该弹出的667

创新融云用户信息

                    YDB.RefreshUserInfo(userId, nickName, portraitUri);          
                    //参数说明:userId(字符类型) 要更新的用户id,nickName(字符类型) 要更新的用户昵称,portraitUri(字符类型) 要更新的用户头像。

备注:开通融云即时通讯插件并部署相关参数后,才不过运这个功能。

5.安判断一个对象是不是属于有类?
使用instanceof (待完善)

始建融云群组

                    YDB.CreateDiscussGroup(defaultUserId, groupName, groupIDFunction);          
                    //参数说明:defaultUserId(字符类型) 默认邀请加入群组的用户id(非本人),groupName(字符类型)群组名,groupIDFunction 获取groupID的回调函数。
                    //需要再web端定义回调函数:function groupIDFunction(groupID){/* 获取并记录App返回的群组ID */}

备考:开通融云即时通讯插件并布置相关参数后,才可应用此功效。

if(a instanceof Person){
alert(‘yes’);
}

开拓融云群组

                    YDB.OpenDiscussGroup(groupId, groupName);          
                    //参数说明:groupId 要打开的群组的id,groupName 要打开的群组名。

备注:开通融云即时通讯插件并安排相关参数后,才可使这功能。

6.new操作符切实涉及了哟吧?
1、创建一个拖欠对象,并且 this
变量引用该目标,同时还持续了该函数的原型。
2、属性与办法让投入到 this 引用的靶子中。
3、新创办的目标由 this 所引用,并且最后隐式的回到 this 。

添加融云群组成员

                    YDB.AddDiscussGroup(groupId, userId, nickName, portraitUri);          
                    //参数说明:groupId 群组id,userId 要添加的用户id,nickName 要添加的用户昵称,portraitUri 要添加的用户头像。

备考:开通融云即时通讯插件并配置相关参数后,才不过利用此功效。

var obj = {};
obj.__proto__ = Base.prototype;
Base.call(obj);

移除融云群组成员

                    YDB.RemoveDiscussGroup(groupId, userId);          
                    //参数说明:groupId 群组id,userId 要移除的用户id。

备考:开通融云即时通讯插件并部署相关参数后,才可使这功效。

7.JSON 的了解
JSON(JavaScript Object Notation)
是一模一样栽轻量级的数据交换格式。它是基于JavaScript的一个子集。数据格式简单,
易于读写, 占用带富小{‘age’:’12’, ‘name’:’back’}
8.js延迟加载的主意来怎么样
defer和async、动态创建DOM方式(用得极度多)、按需要异步载入js
9.ajax 是呀?ajax 的互动模型?同步和异步的区别?如何化解跨域问题?
待完善

初始化融云好友头像信息

                    YDB.IntPortraitUri(userId, nickName, portraitUri);          
                    //参数说明:userId 要初始化的用户id,nickName 要初始化的用户昵称,portraitUri 需初始化的用户头像。

备注:开通融云即时通讯插件并配备相关参数后,才可采取是意义。

  1. 通过异步模式,提升了用户体验
  2. 优化了浏览器和服务器之间的导,减少非必要之数码往返,减少了牵动富占用
  3. Ajax在客户端运行,承担了同等片段自出于服务器负责的做事,减少了很用户量下的服务器负荷。
  4. Ajax的卓绝充分的特点是啊。
    Ajax可以兑现动态不刷新(局部刷新)
    readyState属性 状态 有5只可取值: 0=未初始化 ,1=在加载
    2=以加载,3=交互中,4=完成
    ajax的缺点
    1、ajax不支持浏览器back按钮。
    2、安全题材 AJAX暴露了与服务器交互的底细。
    3、对寻找引擎的支持比较弱。
    4、破坏了次的慌机制。
    5、不轻调试。
    跨域: jsonp、
    iframe、window.name、window.postMessage、服务器上设置代理页面
    10.模块化怎么开?
    就实施函数,不露个人成员

获取手机设备信息

获取手机基本信息

                    YDB.GetBaseInfo(callback);          
                    //参数说明:callback 回调函数。
                   //安卓端返回数据:{
                                    status:                       //操作成功状态值
                                    brand:                          //品牌
                                    model:                          //型号
                                    manufacturer:                //制造商
                                    version:                     //系统版本
                                    sdkVersion:                  //系统SDK版本
                                    deviceid:                             //设备串号
                                    macAddress:                  //mac地址
                                    bootTime:                     //开机时间
                                    }
                   //IOS端返回数据:{
                                    "uuid":"4AD320A1-2A80-4BC7-B9B2-8228D17ED9DE", //uuid
                                    "battery":"UnKnow-100",   //电池状态及电量                                                
                                    "device":"Simulator",  //设备版本
                                    "name":"iPhoneSimulator",//手机别名
                                    "type":"iPhone",//手机型号
                                    "version":"9.3"//手机系统版本
                                     }
                //示例:var YDB = new YDBOBJ();YDB.GetBaseInfo("BaseInfo");   BaseInfo 是您的回调函数
                        function BaseInfo(info){ //info是手机端给您返回的json对象 }

备考:开通获取手机配备信息插件之后,才可采取这个作用。

var module1 = (function(){
var _count = 0;
var m1 = function(){
//…
};
var m2 = function(){
//…
};
return {
m1 : m1,
m2 : m2
};
})();

获取CPU信息

                    YDB.GetCpuInfo(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据:{
                                    status:                       //操作成功状态值
                                    architecture:                  //CPU架构
                                    coreNumber:                      //CPU核心数
                                    minFrequency:                 //CPU最低频率
                                    maxFrequency:                 //CPU最高频率
                                }
                //示例:var YDB = new YDBOBJ();YDB.GetCpuInfo("CpuInfo");   CpuInfo 是您的回调函数
                        function CpuInfo(info){ //info是手机端给您返回的json对象 }

备注:开通获取手机设备信息插件之后,才不过采用是意义,该意义就适用于安卓。

11.对准Node的长处和缺陷提出了投机的见地:

获得内存信息

                    YDB.GetMemoryInfo(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据:{
                                    status:                       //操作成功状态值
                                    totalMemory:                  //内存总大小
                                    availableMemory:              //可用内存大小
                                }
                //示例:var YDB = new YDBOBJ();YDB.GetMemoryInfo("MemoryInfo");   MemoryInfo 是您的回调函数
                        function MemoryInfo(info){ //info是手机端给您返回的json对象 }

备考:开通获取手机设备信息插件之后,才可应用这功效,该功能只适用于安卓。

  • (优点)因为Node是冲事件驱动和管阂的,所以非常适合处理并发请求,
    故此构建以Node上之代理服务器相比另技术实现(如Ruby)的服务器表现而好得差不多。
    除此以外,与Node代理服务器交互的客户端代码是由于javascript语言编写的,
    据此客户端与劳务器端都为此同一栽语言编写,这是很完美之事情
  • (缺点)Node是一个针锋相对新的开源项目,所以不太稳定,它连接一直当转移,
    而少足够多的老三方库支持。看起,就如是Ruby/Rails当年底规范。
    12.异步加载的点子
    (1) defer,只支持IE
    (2) async:
    (3) 创建script,插入到DOM中,加载了后callBack
    documen.write和 innerHTML的区别
    document.write只能重绘整个页面
    innerHTML可以重绘页面的平等有
    13.报告自己答案是聊?

抱手机存储信息

                    YDB.GetStorageInfo(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据:{
                                    status:                   //操作成功状态值
                                    sdCardStatus:              //SD卡的状态,返回如下值:
                                                                //1001    未设置SD卡为御载,直接拔出SD卡后的状态
                                                                //1002    手机正在检测SD卡过程中的状态
                                                                //1003    SD卡正常使用的状态,并具有读写的权限
                                                                //1004    SD卡正常使用的状态,但只有读的权限
                                                                //1005    手动设置SD卡为御载之后,再拔出SD卡之后 的状态
                                                                //1006    手机连接电脑,SD卡做为U盘使用之后的状态
                                                                //1007    SD卡不可被安装
                                                                //1008    手工设置SD卡为御载之后的状态
                                                                //0        没有获取到SD卡的状态
                                    sdCardPath:                  //SD卡的路径
                                    sdCardTotalSize:          //SD卡总大小
                                    sdCardAvailableSize:    //SD卡可用大小
                                    romTotalSize:           //手机自身存储大小
                                    romAvailableSize:        //手机自身可用存储大小
                                    romPath:                   //手机自身存储路径
                                }
                //示例:var YDB = new YDBOBJ();YDB.GetStorageInfo("StorageInfo");   StorageInfo 是您的回调函数
                        function StorageInfo(info){ //info是手机端给您返回的json对象 }

备考:开通获取手机配备信息插件之后,才不过使用这个作用,该功能就适用于安卓。

得到手机显示信息

                    YDB.GetDisplayInfo(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据:{
                                    status:                   //操作成功状态值
                                    width:                      //屏幕宽度(单位为像素)
                                    height:                  //屏幕高度(单位为像素)
                                    densityDpi:                //屏幕密度(单位为dpi)
                                }
                   //示例:var YDB = new YDBOBJ();YDB.GetDisplayInfo("DisplayInfo");   DisplayInfo 是您的回调函数
                        function DisplayInfo(info){ //info是手机端给您返回的json对象 }

备注:开通获取手机配备信息插件之后,才不过运这个功能,该意义就适用于安卓。

(function(x){
delete x;
alert(x);
})(1+5);

系统通讯录

函数参数无法delete删除,delete只能去通过for
in访问的属性。当然,删除失败呢非见面报错,所以代码运行会弹出“1”。

询问所有联系人信

                    YDB.ContactAll(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据样例:[{"lastName":"张","contactId":18,"email":"","homeNum":"0371-12345678","firstName":"三","displayName":"张三","jobNum":"","mobile":"13523002100"},{"lastName":"张","contactId":19,"email":"","homeNum":"0371-12345678","firstName":"三","displayName":"张三","jobNum":"","mobile":"13523002100"}]

                   //示例:var YDB = new YDBOBJ();YDB.ContactAll("allcontacter");   allcontacter 是您的回调函数
                        function allcontacter(info){ //info是手机端给您返回的json对象 }   

备考:开通系统通讯录插件之后,才可使此功效。

14.JS遇之call()和apply()方法的别?
事例中因故 add 来替换 sub,add.call(sub,3,1) == add(3,1)
,所以运行结果也:alert(4);

开辟系统通讯录界面,选择么联系人,返回就选的牵连人信

                    YDB.ContactSelect(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据样例:{"lastName":"张","contactId":18,"email":"","homeNum":"0371-12345678","firstName":"三","displayName":"张三","jobNum":"","mobile":"13523002100"}

                   //示例:var YDB = new YDBOBJ();YDB.ContactSelect("contacter");   contacter 是您的回调函数
                        function contacter(info){ //info是手机端给您返回的json对象 }   

备考:开通系统通讯录插件之后,才可应用这功能。

在意:js 中之函数其实是目标,函数称是针对性 Function 对象的援。

于通讯录添加一个牵连人,所有参数不可同时也空

                    YDB.ContactAdd(lastName, firstName, homeNum, mobile, email, callback);          
                    //参数说明:lastName 联系人姓 firstName 联系人名字  homeNum 住宅电话 mobile手机号 email邮箱 callback回调函数。
                   //返回数据:0 添加失败 1添加成功

                   //示例:var YDB = new YDBOBJ();YDB.ContactAdd("张","三","0371-12345678","13523002100","12345@163.com","addstatus");   addstatus 是您的回调函数
                        function addstatus(info){ //info是手机端给您返回的添加状态 }   

备考:开通系统通讯录插件之后,才可应用这功能。

function add(a,b)
{
alert(a+b);
}
function sub(a,b)
{
alert(a-b);
}
add.call(sub,3,1);

自通讯录删除一个联络人

                    YDB.ContactDelete(contactid, callback);          
                    //参数说明:contactid 要删除的联系人id(从查询所有联系人信息或选择单个联系人中获取) callback 回调函数。
                   //返回数据:0 添加失败 1添加成功

                   //示例:var YDB = new YDBOBJ();YDB.ContactDelete("18","deletestatus");   deletestatus 是您的回调函数
                        function deletestatus(info){ //info是手机端给您返回的删除状态 }   

备注:开通系统通讯录插件之后,才不过运这个功能。

15.Jquery与jQuery UI 有吗区别?

基于 id 更新通讯录的维系人消息

                    YDB.ContactUpdate(contactid, lastName, firstName, homeNum, mobile, email, callback);          
                    //参数说明:contactid 要更新的联系人id(从查询所有联系人信息或选择单个联系人中获取) lastName 联系人姓 firstName 联系人名字 homeNum 住宅电话 mobile手机号 email邮箱 callback回调函数。
                   //返回数据:0 添加失败 1添加成功

                   //示例:var YDB = new YDBOBJ();YDB.ContactUpdate("18","张",三","0371-12345678","13523002112","ioudh12@163.com","upstatus");   upstatus 是您的回调函数
                        function upstatus(info){ //info是手机端给您返回的更新状态 }   

备考:开通系统通讯录插件之后,才可应用这功能。

  • jQuery是一个js库,主要提供的效用是选择器,属性修改和事件绑定等等。
  • jQuery UI则是当jQuery的底子及,利用jQuery的扩展性,设计之插件。
    提供了部分常用之界面元素,诸如对话框、拖动行为、改变大小作为等等
    16.jquery 着如何以数组转化为json字符串,然后再次倒车回来?

纱节奏播放

jQuery中并未供者意义,所以您用事先编两单jQuery的扩大:

播音网络节奏

                    YDB.StartVoice(path);          
                    //参数说明:path 音频资源地址

                   //示例:var YDB = new YDBOBJ();YDB.StartVoice("http://music.baidutt.com/up/kwcywdkd/cmypus.mp3");  

备考:开通网络节奏播放插件之后,才可采用是意义。

$.fn.stringifyArray = function(array) {
return JSON.stringify(array)
}
$.fn.parseArray = function(array) {
return JSON.parse(array)
}

安装音量 音量大小,取值范围:0-1

                    YDB.VolumeVideo(volume);          
                    //参数说明:volume 音量大小,取值范围:0-1

                   //示例:var YDB = new YDBOBJ();YDB.VolumeVideo('0.6');  

备注:开通网络节奏播放插件之后,才可采取是意义。

下一场调用:

停顿播放

                    YDB.PauseVoice();          
                    //参数说明:该方法不需要参数。

                   //示例:var YDB = new YDBOBJ();YDB.PauseVoice();  

备注:开通网络节奏播放插件之后,才不过利用此意义。

$(“”).stringifyArray(array)

继往开来播放

                    YDB.PlayVoice();          
                    //参数说明:该方法不需要参数。

                   //示例:var YDB = new YDBOBJ();YDB.PlayVoice();  

备考:开通网络节奏播放插件之后,才可使这功效。

17.JavaScript着的作用域与变量声明提升?

停播放

                    YDB.StopVoice();          
                    //参数说明:该方法不需要参数。

                   //示例:var YDB = new YDBOBJ();YDB.StopVoice();  

备考:开通网络节奏播放插件之后,才不过利用此功效。

外一些

网视频播放

                    YDB.OpenVideo(path);          
                    //参数说明:path 视频资源地址。

                   //示例:var YDB = new YDBOBJ();YDB.OpenVideo(path);  

备考:开通网络视频播放插件之后,才可使这功能。

(HTTP、正则、优化、重构、响应式、移动端、团队通力合作、SEO、UED、职业生涯)

安装安卓手机壁纸

                    YDB.Wallpaper(path);          
                    //参数说明:path 图片路径,支持http://路径的图片。

                   //示例:var YDB = new YDBOBJ();YDB.Wallpaper(path);  

备考:开通设置安卓手机壁纸插件之后,才可采用是意义,该意义只适用于安卓。

  • 基于Class的选择性的特性相对于Id选择器开销很充分,因为急需遍历所有DOM元素。
  • 几度操作的DOM,先缓存起来又操作。用Jquery的链式调用更好。
    比如:var str=$(“a”).attr(“href”);
  • for (var i = size; i < arr.length; i++) {}
    for 循环每一样不善巡回都摸了频繁组 (arr) 的.length
    属性,在上马循环的时装一个变量来存储这个数字,可以于循环跑得重新快:
    for (var i = size, length = arr.length; i < length; i++) {}

得到手机GPS状态

                    YDB.GpsState(callback);          
                    //参数说明:callback 回调函数。
                   //返回数据:{ "gps":true }   //返回值为true表示当前手机gps为开启状态  false为关闭状态
                   //示例:var YDB = new YDBOBJ();YDB.GpsState("State");   State 是您的回调函数
                        function State(info){ //info是手机端给您返回的json对象 }

备考:开通获取手机GPS状态插件之后,才可采用这个作用。

前端开发的优化问题(看老虎14长达性能优化原则)。

安卓手机打开系统GPS界面

                    YDB.Opengps();          
                    //参数说明:该方法不需要参数。
                   //示例:var YDB = new YDBOBJ();YDB.Opengps();   

备考:开通获取手机GPS状态插件之后,才可应用此功效,该功能只适用于安卓。

(1) 减少http请求次数:CSS Sprites,
JS、CSS源码压缩、图片大小控制相当;网页Gzip,CDN托管,data缓存
,图片服务器。

地图导航

(2) 前端模板
JS+数据,减少由于HTML标签导致的牵动富浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用求,减少请求次数

认清当前装备是否就装高德、谷歌、百度地图

                    YDB.NavigatorInfo(callback);          
                    //参数说明:callback 回调方法。
                    //返回数据样例:{"aMap":"false","bMap":"true","gMap":"false"}
                          其中        bMap:百度地图 aMap:高德地图 gMap:谷歌地图
                   //示例:var YDB = new YDBOBJ();YDB.NavigatorInfo("getnavigator");   getnavigator是您的回调方法名。
                   function getnavigator(info){ //info是手机端给您返回的json对象 }   

备考:开通地图导航插件之后,才可应用这功能。

(3) 用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能。

开拓百度地图

                    YDB.NavigatorBaidu();          
                    //参数说明:该方法不需要参数。
                   //示例:var YDB = new YDBOBJ();YDB.NavigatorBaidu();      

备注:开通地图导航插件之后,才不过下此功效。

(4) 当需要装的体裁很多经常设置className而非是直接操作style。

开拓谷歌地图

                    YDB.NavigatorGoogle();          
                    //参数说明:该方法不需要参数。
                   //示例:var YDB = new YDBOBJ();YDB.NavigatorGoogle();      

备注:开通地图导航插件之后,才不过运这个作用。

(5) 少用全局变量、缓存DOM节点查找的结果。减少IO读取操作。

打开高德地图

                    YDB.NavigatorGaode();          
                    //参数说明:该方法不需要参数。
                   //示例:var YDB = new YDBOBJ();YDB.NavigatorGaode();      

备考:开通地图导航插件之后,才不过运这个功能。

(6) 避免以CSS Expression(css表达式)又称Dynamic
properties(动态性)。

开拓百度地图并统筹路

                    YDB.NavigatorBaiduPath(startlat, startlon, endlat, endlon);          
                    //参数说明:startlat 起点纬度(数字类型) startlon  起点经度(数字类型) endlat 终点纬度(数字类型) endlon  终点经度(数字类型)
                    //示例:var YDB = new YDBOBJ();YDB.NavigatorBaiduPath("34.55648","112.4772379","33.784214","112.57062599");      

备注:开通地图导航插件之后,才可使这功能。

(7) 图片预加载,将样式表放在顶部,将脚本放在脚 加上岁月戳。

打开高德地图并计划路

                    YDB.NavigatorGaodePath(startlon, startlat, startname, endlon, endlat, endname);          
                    //参数说明:startlat 起点纬度(数字类型) startlon  起点经度(数字类型) startname 起点名称(字符串类型)  endlat 终点纬度(数字类型) endlon  终点经度(数字类型) endname 终点名称(字符串类型)
                    //示例:var YDB = new YDBOBJ();YDB.NavigatorGaodePath("34.55648","112.4772379","33.784214","112.57062599");      

备注:开通地图导航插件之后,才可采取是意义。

(8)
避免以页面的关键性布局中动用table,table要对等里的情节全下载后才见面显出来,显示比div+css布局慢。

开辟苹果自带地图并起导航

                    YDB.appleNavigation(startlat, startlon, endlat, endlon);          
                    //参数说明:startlat 起点纬度(数字类型) startlon  起点经度(数字类型) endlat 终点纬度(数字类型) endlon  终点经度(数字类型)
                    //示例:var YDB = new YDBOBJ();YDB.appleNavigation("34.55648","112.4772379","33.784214","112.57062599");      

备注:开通地图导航插件之后,才不过运这功能。

http状态码有那些?分别代表是啊意思?

蓝牙多少传

                    YDB.OpenBluetooth();     
                     //参数说明:该方法不需要参数。
                     //示例:var YDB = new YDBOBJ();YDB.OpenBluetooth();     

备考:开通蓝牙数据传插件之后,才不过运这个功能。此功能就适用于安卓。

100-199 用于指定客户端应相应的一点动作。

蓝牙 4.0

200-299 用于表示要成功。

初始化蓝牙4.0管理器

                    YDB.BLinitManager(callback);     
                     //参数说明:callback 回调方法。
                     //返回数据样例:{"state": "poweredOn" } 
                     //字符串类型;蓝牙4.0设备连接状态,取值范围如下:
                                //poweredOn:设备开启状态 -- 可用状态
                                //poweredOff:设备关闭状态
                                //resetting:正在重置状态
                                //unauthorized:设备未授权状态
                                //unknown:初始的时候是未知的
                                //unsupported:设备不支持的状态

                    //示例:var YDB = new YDBOBJ();YDB.BLinitManager("getmanagerstate");  getmanagerstate是您的回调方法名。
                   function getmanagerstate(state){ //state是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才可采取是意义。

300-399 用于已经走的公文又每每为含有在一定头信息遭到指定新的地方信息。

开找寻蓝牙4.0装置

                    YDB.BLscan(callback);
                     //开始搜索蓝牙4.0设备,会不断的扫描跟新附近的蓝牙4.0设备信息,可通过 BLgetPeripheral 接口来获取扫描到的设备信息。若要停止、清空扫描则调用 BLstopScan 接口     
                     //参数说明:callback 回调方法。
                     //返回数据样例:{ "status": "true" }    //布尔类型;是否获取成功,true|false                 

                    //示例:var YDB = new YDBOBJ();YDB.BLscan("getscanstate");   getscanstate是您的回调方法名。
                   function getscanstate(state){ //state是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可应用这功能。

400-499 用于指出客户端的谬误。400
1、语义有误,当前呼吁无法为服务器理解。401 当前求需要用户验证 403
服务器已亮要,但是拒绝执行它。

收获当前围观到之兼具外围设备信息

                    YDB.BLgetPeripheral(callback);     
                     //参数说明:callback 回调方法。
                     //返回数据样例:{
                                                            "peripherals":[{ //数组类型;获取到的当前扫描到的蓝牙4.0设备
                                                            "uuid": "",    //字符串类型;扫描到的蓝牙设备的 UUID
                                                            "name": "",    //字符串类型;扫描到的蓝牙设备的名字
                                                            "rssi": ""       //数字类型;扫描到的蓝牙设备的信号强度
                                                        },...]
                                                  }      //JSON 对象          

                    //示例:var YDB = new YDBOBJ();YDB.BLgetPeripheral("getperipherals");   getperipherals是您的回调方法名。
                   function getperipherals(peripherals){ //peripherals是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可采用是作用。

500-599 用于支持服务器错误。 503 – 服务不可用

认清是否在扫描

                    YDB.BLisScanning(callback);     
                     //参数说明:callback 回调方法。
                     //返回数据样例:{ "status": "true" }    //布尔类型;是否在扫描,true|false         

                    //示例:var YDB = new YDBOBJ();YDB.BLisScanning("isScanning");   isScanning是您的回调方法名。
                   function isScanning(state){ //state是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可应用这功能。

一个页面从输入 URL
到页面加载显示就,这个进程中还出了啊?(流程说之逾详细越好)

终止搜索附近的蓝牙设备,并清空已找到之笔录在本土的外围设备信息

                    YDB.BLstopScan();     
                     //参数说明:不需要传递参数。      

                    //示例:var YDB = new YDBOBJ();YDB.BLstopScan();      

备考:开通蓝牙4.0插件之后,才可采用是意义。

卿所了解之页面性能优化措施有那些?

连指定外围设备

                    YDB.BLconnect(peripheralUUID,callback);     
                     //参数说明:peripheralUUID 要连接的外围设备的 UUID(字符串)   callback 回调方法。
                     //返回数据样例:{ "status": "true" }    //布尔类型;是否连接成功,true|false         

                    //示例:var YDB = new YDBOBJ();YDB.BLconnect('88:0F:10:86:6A:CF','connectstate');   connectstate是您的回调方法名。
                   function connectstate(state){ //state是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过使用这个作用。

除去前端以外还叩问什么其他技术呢?你不过极致厉害的技巧是呀?

断开与指定外围设备的连日

                    YDB.BLdisconnect(peripheralUUID,callback);     
                     //参数说明:peripheralUUID 要断开连接的外围设备的 UUID(字符串)   callback 回调方法。
                     //返回数据样例:{ "status": "true" }    //布尔类型;是否成功断开连接,true|false         

                    //示例:var YDB = new YDBOBJ();YDB.BLdisconnect('88:0F:10:86:6A:CF','disconnectstate');   disconnectstate是您的回调方法名。
                   function disconnectstate(state){ //state是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过下是意义。

AMD(Modules/Asynchronous-Definition)、CMD(Common Module
Definition)规范区别?

判定与指定外围设备是否为总是状态

                    YDB.BLisConnected(peripheralUUID,callback);     
                     //参数说明:peripheralUUID 指定外围设备的 UUID(字符串)   callback 回调方法。
                     //返回数据样例:{ "status": "true" }    //布尔类型;是否连接,true|false         

                    //示例:var YDB = new YDBOBJ();YDB.BLisConnected('88:0F:10:86:6A:CF','getconnectstate');   getconnectstate是您的回调方法名。
                   function getconnectstate(state){ //state是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过运这个作用。

18.谈提你当哪些做会是种举行的重复好?

依据 UUID 找到有匹配的蓝牙外围设备信息

                    YDB.BLretrievePeripheral(peripheralUUIDs,callback);     
                     //参数说明:peripheralUUIDs 指定的蓝牙外围设备的 UUID 组成的数组(字符串)   callback 回调方法。
                     //返回数据样例:{
                                                        "peripherals":[{ //数组类型;获取到的蓝牙外围设备信息
                                                          "uuid": "",    //字符串类型;获取到的蓝牙设备的uuid
                                                          "name": "",    //字符串类型;获取到的蓝牙设备的名字
                                                          "rssi": "" ,     //数字类型;获取到的蓝牙设备的信号强度
                                                          "services":[]  //数组类型;获取到的蓝牙设备的所有服务 UUID 的集合
                                                        },...]
                                                  }        

                    //示例:var YDB = new YDBOBJ();YDB.BLretrievePeripheral('["88:0F:10:86:6A:CF","88:0F:10:80:6A:CF"]', 'getperipherals');   getperipherals是您的回调方法名。
                   function getperipherals(peripherals){ //peripherals是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过利用此功效。此意义就适用于IOS。

19.你针对前者界面工程师是位置是怎么理解的?它的前景会什么?

冲指定的服务,找到时网处于连接状态的天蓝牙被包含这个服务之具备蓝牙外围设备信息

                    YDB.BLretrieveConnectedPeripheral(serviceUUIDs,callback);     
                     //参数说明:serviceUUIDs 指定的蓝牙4.0设备的服务(service)的 UUID(字符串) 组成的数组(字符串)   callback 回调方法。
                     //返回数据样例:{
                                                        "peripherals":[{ //数组类型;获取到的当前处于连接状态的蓝牙外围设备
                                                        "uuid": "",    //字符串类型;处于连接状态的蓝牙设备的uuid
                                                        "name": "",    //字符串类型;处于连接状态的蓝牙设备的名字
                                                        "rssi":  "" ,    //数字类型;处于连接状态的蓝牙设备的信号强度
                                                        "services":[]  //数组类型;处于连接状态的蓝牙设备的所有服务 UUID 的集合
                                                    },...]
                                                }

                    //示例:var YDB = new YDBOBJ();YDB.BLretrieveConnectedPeripheral('["00002902-0000-1000-8000-00805f9b34fb","00002902-0000-5685-8000-00805f9b34fb"]', 'getperipherals');   getperipherals是您的回调方法名。
                   function getperipherals(peripherals){ //peripherals是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可使这功能。此功效只适用于IOS。

20.加班底视角
突击就比如借钱,原则应该是——救急不救穷

依据指定的外围设备 UUID 获取该外围设备的有服务

                    YDB.BLdiscoverService(peripheralUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串)   callback 回调方法。
                     //返回数据样例:{
                                                     "status": "true" ,   //布尔类型;是否获取成功,true|false
                                                     "services":[]      //数组类型;获取的所有服务号集合
                                              }

                    //示例:var YDB = new YDBOBJ();YDB.BLdiscoverService('88:0F:10:86:6A:CF', 'getservices');   getservices是您的回调方法名。
                   function getservices(services){ //services是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可下此功效。

21.平常怎么管理而的品种,如何设计突发大面积出现架构?
事先团队要确定好全局样式(globe.css),编码模式(utf-8) 等
修习惯必须一律(例如都是用继承式的写法,单样式都勾成一行);

冲指定的外围设备 UUID 及其服务 UUID 获取该外围设备的拥有特征

                    YDB.BLdiscoverCharacteristics(peripheralUUID, serviceUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID   callback 回调方法。
                     //返回数据样例:{
                                            "status": "true" ,      //布尔类型;是否获取成功,true|false
                                            "characteristics":[{  //数组类型;获取的所有特征信息的集合
                                            "uuid": "",        //字符串类型;特征的 UUID 
                                            "serviceUUID": "", //字符串类型;服务的 UUID 
                                            "permissions": "", //字符串类型;特征的权限,取值范围如下:
                                                             //readable:
                                                             //writeable:
                                                             //readEncryptionRequired:
                                                             //writeEncryptionRequired:
                                            "propertie": ""    //字符串类型;特征的属性,取值范围如下:
                                                             //broadcast:
                                                             //read:
                                                             //writeWithoutResponse:
                                                             //write:
                                                             //notify:
                                                             //indicate:
                                                             //authenticatedSignedWrites:
                                                             //extendedProperties:
                                                             //notifyEncryptionRequired:
                                                             //indicateEncryptionRequired:
                                         }]   
                                     }

                    //示例:var YDB = new YDBOBJ();YDB.BLdiscoverCharacteristics('88:0F:10:86:6A:CF','00002902-0000-1000-8000-00805f9b34fb', 'getcharacteristics');   getcharacteristics是您的回调方法名。
                   function getcharacteristics(characteristics){ //characteristics是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可采用是意义。

号样式编写人,各模块都及时标注(标注关键样式调用的地方);

据悉指定的外围设备 UUID 及其服务 UUID 和特点 UUID 获取该外围设备的持有描述称

                    YDB.BLdiscoverDescriptorsForCharacteristic(peripheralUUID, serviceUUID, characteristicUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID   callback 回调方法。
                     //返回数据样例:{
                                                "status": "true" ,      //布尔类型;是否读取成功,true|false
                                                "descriptors":[{      //数组类型;获取的所有描述符信息的集合
                                                "uuid": "",        //字符串类型;描述符的 UUID 
                                                "serviceUUID": "", //字符串类型;服务的 UUID 
                                                "characteristicUUID":"",//字符串类型;特征的 UUID 
                                                "decode":"" ,        //布尔类型;描述符的值是否是二进制类型数据
                                                "value":""           //字符串类型;描述符的值,若 decode 为 true,则该值为转码后的值
                                             }]      
                                      }

                    //示例:var YDB = new YDBOBJ();YDB.BLdiscoverDescriptorsForCharacteristic('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB', 'getdescriptors');   
                           getdescriptors是您的回调方法名。
                   function getdescriptors(descriptors){ //descriptors是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可采用是作用。

页面进行标注(例如 页面 模块 开始同了);

依据指定的外围设备 UUID 及其服务 UUID 和特征 UUID 监听数据回发

                    YDB.BLsetNotify(peripheralUUID, serviceUUID, characteristicUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID   callback 回调方法。
                     //返回数据样例:{
                                            "status": "true" ,      //布尔类型;是否获取数据,true|false
                                            "characteristic":{    //JSON对象;获取监听的特征的信息
                                            "uuid": "",        //字符串类型;特征的 UUID 
                                            "serviceUUID": "", //字符串类型;服务的 UUID 
                                            "value": "" ,        //字符串类型;特征的值
                                            "permissions": "", //字符串类型;特征的权限,取值范围如下:
                                                             //readable:
                                                             //writeable:
                                                             //readEncryptionRequired:
                                                             //writeEncryptionRequired:
                                            "propertie": ""    //字符串类型;特征的属性,取值范围如下:
                                                             //broadcast:
                                                             //read:
                                                             //writeWithoutResponse:
                                                             //write:
                                                             //notify:
                                                             //indicate:
                                                             //authenticatedSignedWrites:
                                                             //extendedProperties:
                                                             //notifyEncryptionRequired:
                                                             //indicateEncryptionRequired:
                                         }      
                                    }

                    //示例:var YDB = new YDBOBJ();YDB.BLsetNotify('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB', 'getcharacteristic');  
                            getcharacteristic是您的回调方法名。
                   function getcharacteristic(characteristic){ //characteristic是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过利用此功效。

CSS跟HTML 分文件夹并行存放,命名都得统一(例如style.css)
JS 分文件夹存放 命民以该JS 功能也遵循英文翻译;

因指定的外围设备 UUID 及其服务 UUID 和特点 UUID 读取数据

                    YDB.BLreadValueForCharacteristic(peripheralUUID, serviceUUID, characteristicUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID   callback 回调方法。
                     //返回数据样例:{
                                         "status": "true" ,      //布尔类型;是否读取成功,true|false
                                         "characteristic":{    //JSON对象;获取监听的特征的信息
                                         "uuid": "",        //字符串类型;特征的 UUID 
                                         "serviceUUID": "", //字符串类型;服务的 UUID 
                                         "value": "" ,        //字符串类型;特征的值
                                         "permissions": "", //字符串类型;特征的权限,取值范围如下:
                                                            //readable:
                                                            //writeable:
                                                            //readEncryptionRequired:
                                                            //writeEncryptionRequired:
                                         "propertie": ""    //字符串类型;特征的属性,取值范围如下:
                                                            //broadcast:
                                                            //read:
                                                            //writeWithoutResponse:
                                                            //write:
                                                            //notify:
                                                            //indicate:
                                                            //authenticatedSignedWrites:
                                                            //extendedProperties:
                                                            //notifyEncryptionRequired:
                                                            //indicateEncryptionRequired:
                                        }      
                                    }

                    //示例:var YDB = new YDBOBJ();YDB.BLreadValueForCharacteristic('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB', 'getcharacteristic');   
                           getcharacteristic是您的回调方法名。
                   function getcharacteristic(characteristic){ //characteristic是手机端给您返回的json对象 }    

备注:开通蓝牙4.0插件之后,才不过采用是意义。

图采取整合的 images.png png8 格式文件使用
尽量整合在一起使用方便将来的管理

冲指定的外围设备 UUID 及其服务 UUID 和特色 UUID 及其描述吻合获取数据

                    YDB.BLreadValueForDescriptor(peripheralUUID, serviceUUID, characteristicUUID,descriptorUUID,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID  descriptorUUID 指定的描述符的 UUID   callback 回调方法。
                     //返回数据样例:{
                                            "status": "true" ,      //布尔类型;是否读取成功,true|false
                                            "descriptor":{        //JSON对象;获取的所有描述符信息
                                            "uuid": "",        //字符串类型;描述符的 UUID 
                                            "serviceUUID": "", //字符串类型;服务的 UUID 
                                            "characteristicUUID":"",//字符串类型;特征的 UUID 
                                            "decode":"" ,        //布尔类型;描述符的值是否是二进制类型数据
                                            "value":""           //字符串类型;描述符的值,若 decode 为 true,则该值为转码后的值
                                            }      
                                    }

                    //示例:var YDB = new YDBOBJ();YDB.BLreadValueForDescriptor('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB', '00002A43-0000-1000-8000-00805F9B34FB', 'getcharacteristic');   getcharacteristic是您的回调方法名。
                   function getcharacteristic(characteristic){ //characteristic是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可利用此功效。

那些操作会招内存泄漏?

冲指定的外围设备 UUID 及其服务 UUID 和特点 UUID 写多少

                    YDB.BLwriteValueForCharacteristic(peripheralUUID, serviceUUID, characteristicUUID,value,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID  value 要写入的数据 ,十六进制的字符串   callback 回调方法。
                     //返回数据样例:{
                                                "status": "true" ,      //布尔类型;是否发送成功,true|false
                                                "characteristic":{    //JSON对象;获取监听的特征的信息
                                                "uuid": "",        //字符串类型;特征的 UUID 
                                                "serviceUUID": "", //字符串类型;服务的 UUID 
                                                "permissions": "", //字符串类型;特征的权限,取值范围如下:
                                                                 //readable:
                                                                 //writeable:
                                                                 //readEncryptionRequired:
                                                                 //writeEncryptionRequired:
                                                "propertie": ""    //字符串类型;特征的属性,取值范围如下:
                                                                 //broadcast:
                                                                 //read:
                                                                 //writeWithoutResponse:
                                                                 //write:
                                                                 //notify:
                                                                 //indicate:
                                                                 //authenticatedSignedWrites:
                                                                 //extendedProperties:
                                                                 //notifyEncryptionRequired:
                                                                 //indicateEncryptionRequired:
                                             }      
                                        }

                    //示例:var YDB = new YDBOBJ();YDB.BLwriteValueForCharacteristic('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB', 'ceshishuju', 'getcharacteristic');   
                           getcharacteristic是您的回调方法名。
                   function getcharacteristic(characteristic){ //characteristic是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可采取是意义。

内存泄漏指任何对象在你不再持有或用其后还是有。
渣回收器定期扫描对象,并盘算引用了每个对象的旁对象的数据。如果一个对象的援数为
0(没有外对象引用了该目标),或对拖欠对象的旷世引用是循环的,那么该目标的内存即可回收。
setTimeout 的首先只参数使用字符串而不函数的语句,会掀起内存泄漏。

据悉指定的外围设备 UUID 及其服务 UUID 和特征 UUID 及其描述称发送数据

                    YDB.BLwriteValueForDescriptor(peripheralUUID, serviceUUID, characteristicUUID,descriptorUUID,value,callback);     
                     //参数说明:peripheralUUID 指定的蓝牙外围设备的 UUID(字符串) serviceUUID 指定的服务的 UUID  characteristicUUID 指定的特征的 UUID  descriptorUUID 指定的描述符的 UUID  value 要发送的数据 ,十六进制的字符串   callback 回调方法。
                     //返回数据样例:{
                                                "status": "true" ,      //布尔类型;是否发送成功,true|false
                                                "characteristic":{    //JSON对象;获取监听的特征的信息
                                                "uuid": ",        //字符串类型;特征的 UUID 
                                                "serviceUUID": "", //字符串类型;服务的 UUID 
                                                "permissions": "", //字符串类型;特征的权限,取值范围如下:
                                                                 //readable:
                                                                 //writeable:
                                                                 //readEncryptionRequired:
                                                                 //writeEncryptionRequired:
                                                "propertie": "" ,  //字符串类型;特征的属性,取值范围如下:
                                                                 //broadcast:
                                                                 //read:
                                                                 //writeWithoutResponse:
                                                                 //write:
                                                                 //notify:
                                                                 //indicate:
                                                                 //authenticatedSignedWrites:
                                                                 //extendedProperties:
                                                                 //notifyEncryptionRequired:
                                                                 //indicateEncryptionRequired:
                                                "descriptors":[{        //数组类型;获取的所有描述符信息的集合
                                                    "uuid": "",         //字符串类型;描述符的 UUID 
                                                    "serviceUUID": "",  //字符串类型;服务的 UUID 
                                                    "characteristicUUID":"",//字符串类型;特征的 UUID 
                                                    "decode":"" ,         //布尔类型;描述符的值是否是二进制类型数据
                                                    "value": ""           //字符串类型;描述符的值,若 decode 为 true,则该值为转码后的值
                                                }] 
                                             }       
                                        }
                    //示例:var YDB = new YDBOBJ();YDB.BLwriteValueForDescriptor('88:0F:10:86:6A:CF', '00002902-0000-1000-8000-00805f9b34fb', '00002A43-0000-1000-8000-00805F9B34FB','00002A43-0000-1000-8000-00805F9B34FB', 'ceshishuju', 'getcharacteristic');   getcharacteristic是您的回调方法名。
                   function getcharacteristic(characteristic){ //characteristic是手机端给您返回的json对象 }    

备考:开通蓝牙4.0插件之后,才可采用是意义。

闭包、控制台日志、循环(在有限只目标彼此引用且彼此保留时,就见面来一个循环往复)

调用系统音效

                    YDB.Ring();
                    //此方法可调用手机系统默认通知铃声。
                    //示例:var YDB = new YDBOBJ();YDB.Ring(); 

备考:开通调用系统音效插件之后,才不过利用此功效。

23.公说你爱前端,那么应该WEB行业之进步异常关注吧?
说说最近太风靡的有事物吧?
Node.js、Mongodb、npmM、MVVM、MEAN

Url参数设置

               当URL附带约定的参数设置的时候,相应打开的界面会按照参数设置实现约定效果,具体参数如下:
               可选参数1(显示隐藏顶部导航):YDBSetHeadBar,传值0、1,当值为0时,页面打开后不带顶部导航,当值为1时显示顶部导航
               可选参数2(开启关闭下拉刷新):YDBSetDragRefresh,传值0、1,当值为0时关闭下拉刷新,1则开启下拉刷新
               可选参数3(顶部菜单呼出按钮):YDBSetMoreButton,传值0、1,当值为0时隐藏顶部更多按钮,1时显示更多按钮
               可选参数4(设置气泡提醒):YDBSetPopUp,传值以逗号分隔的两个数字,前一个代表气泡出现在导航的索引,后一个代表气泡显示数字
               可选参数5(设置显示标题):YDBSetTitle,设置显示的标题
               示例:如果同时设置了以上四种URl参数,则您的URL形式如下所示(这里举例为绝对路径方式,当然相对路径方式也支持)
               http://app.lrswl.com/?YDBSetHeadBar=1&YDBSetDragRefresh=0&YDBSetMoreButton=1&YDBPopUp=0,122

适用模板:有导航模板、无导航模板

备考:URL参数设置为非js的一律种约定,具体按说明设置链接的URl字串就执行。不需分外的JS(包括YdbOnline.js)支持。

24.君发出了解我们企业呢?说说您的认识?
根据实际情形应即可

25.移动端(比如:Android IOS)怎么办好用户体验?
作为同叫前端工程师,无论工作年头长都应有要掌握的知识点有:

1、DOM结构 —— 两单节点内或许存在怎样关系与如何在节点内自由运动。

2、DOM操作 ——如何添加、移除、移动、复制、创建和查找节点等。

3、事件 —— 如何采取事件,以及IE和标准DOM事件模型中是的距离。

4、XMLHttpRequest —— 这是呀、怎样完整地履行同样糟糕GET请求、怎样检测错误。

5、严格模式和混杂模式 —— 如何触发就简单种植模式,区分它们有何意义。

6、盒模型 ——
外边距、内边距同边框之间的涉及,及IE8以下版本的浏览器中的盒模型

7、块级元素和行内元素 —— 怎么用CSS控制其、以及怎样合理的动她

8、浮动元素——怎么下它们、它们有啊问题同怎么解决这些问题。

9、HTML与XHTML——二者有什么分别,你看当用啊一个并说有理由。

10、JSON —— 作用、用途、设计布局。

自发一个前端学习交流QQ群:328058344
如果您于求学前端的历程遭到相遇什么问题,欢迎来自己之QQ群提问,群里每天还会见更新一些上学资源。禁止闲聊,非喜不进。

相关文章

No Comments, Be The First!
近期评论
    分类目录
    功能
    网站地图xml地图