Appium Server源码分析之作为Bootstrap客户端Appium Server拥有两个主要的功能: 它是个http服务器,它专门接收从客户端通过基于http的REST协议发送过来的命令 他是bootstrap客户端:它接收到客户端的命令后,需要想办法把这些命令发送给目标安卓机器的bootstrap来驱动uiatuomator来做事情 通过上一篇文章《Appium Server 源码分析之启动运行Express http服务器》我们分析了Appium Server是如何作为一个http服务器进行工作...
Bootstrap初始化过程netty的客户端引导类是Bootstrap,我们看一下spark的rpc中客户端部分对Bootstrap的初始化过程TransportClientFactory.createClient(InetSocketAddress address)只需要贴出Bootstrap初始化部分的代码// 客户端引导对象 Bootstrap bootstrap = new Bootstrap(); // 设置各种参数 bootstrap.group(workerGroup).channel(socketChannelClass)// Disable Nagle‘s Algorithm since we don‘t want packets to wait//...
源码文件: Scrollspy.js 实现功能 1、当滚动区域内设置的hashkey距离顶点到有效位置时,就关联设置其导航上的指定项 2、导航必须是 .nav > li > a 结构,并且a上href或data-target要绑定hashkey 3、菜单上必须有.nav样式 4、滚动区域的data-target与导航父级Id(一定是父级)要一致 <div id="selector" class="navbar navbar-default"><ul class="nav navbar-nav"><li><a href="#one">one</a> </li><li><a href="#two">two</a> </...
实现tab选项卡的应用,此插件相对比较简单 源码文件: tab.js 实现原理 1、单击一个元素时,首先将原来高亮的元素取消 2、然后给被单击元素进行高亮 3、如果单击元素是下拉框中某个选项,则选中本身,还要选中下拉框 5、如果定义了动画,先执行动画,然后回调 源码分析: 1、Show方法,是在单击一个元素的时候触发,会触发如下四个事件 1.1、Hiden.bs.tab:隐藏上一个元素 1.2、Show.bs.tab:显示当前元素 1.3、Hideen.bs.tab:隐藏...
源码分析: Dropdowns.scss:下拉框模块 Javascripts/bootstrap/dropdown.js:实现下拉框响应 实现功能及原理: 下拉选项卡,默认不能实现显示选中项的功能 原理: 1、利用dropdown类作为定位点,然后让子级的列表dropdown-menu绝对定位实现,还需要加一个单击点作为设置data-toggle=”dropdown”才能做关联。2、 需要js插件的支持 源码分析: 1、caret:实现向下的三角形,利用边框实现的 1.1、边框...
源码文件: Scrollspy.js 实现功能 1、当滚动区域内设置的hashkey距离顶点到有效位置时,就关联设置其导航上的指定项2、导航必须是 .nav > li > a 结构,并且a上href或data-target要绑定hashkey3、菜单上必须有.nav样式4、滚动区域的data-target与导航父级Id(一定是父级)要一致 one two three ibeOne的具体内容One的具体内容One的具体内容One的具体内容One的具体内容One...
一、tooltip(提示框) 源码文件: Tooltip.jsTooltip.scss 实现原理: 1、获取当前要显示tooltip的元素的定位信息(top、left、bottom、right、width、height等)2、计算tooltip的位置,是top、left、bottom、right其中一个3、然后根据计算的位置值,运算出坐标值4、给tooltip应用坐标值 源码分析: 1、ownerDocument:文档;包含两个对象:、documentElement(根节点)2、$.contains(domA, domB):判断domA是否包含dom...
一、tooltip(提示框) 源码文件: Tooltip.jsTooltip.scss 实现原理: 1、获取当前要显示tooltip的元素的定位信息(top、left、bottom、right、width、height等)2、计算tooltip的位置,是top、left、bottom、right其中一个3、然后根据计算的位置值,运算出坐标值4、给tooltip应用坐标值 源码分析: 1、ownerDocument:文档;包含两个对象:、documentElement(根节点)2、$.contains(domA, domB):判断domA是否包含domB元素3、应...
源码文件: Scrollspy.js 实现功能 1、当滚动区域内设置的hashkey距离顶点到有效位置时,就关联设置其导航上的指定项2、导航必须是 .nav > li > a 结构,并且a上href或data-target要绑定hashkey3、菜单上必须有.nav样式4、滚动区域的data-target与导航父级Id(一定是父级)要一致 one two three ibeOne的具体内容One的具体内容One的具体内容One的具体内容One的具体内容One的具体内容twoOne的具体内容One的具体内容One的具体内容One...
一、表单(Form)源码文件:_form.scssmixins/_form.scss1、按层次结构分:form-group -> form-control/input-group/form-static-control -> 各类标签2、Form-group/form-control/input-group/form-static-control之类的容器,分为两种显示方式:block、inline-block。而实现input-group水平用的是table-cell。 .input-group {display: inline-table;vertical-align: middle;.input-group-addon,.input-group-btn,.form-control {w...
前文在分析BootStrapApplicationListener时得到当引入nacos时,会加载NacosConfigBootstrapConfiguration配置类: @Configuration(proxyBeanMethods = false) @ConditionalOnProperty(name = "spring.cloud.nacos.config.enabled", matchIfMissing = true) public class NacosConfigBootstrapConfiguration {@Bean@ConditionalOnMissingBeanpublic NacosConfigProperties nacosConfigProperties() {return new NacosConfigProperti...
body 的组成结构 body 部分包含了 HEADER、CONTAINER、FOOTER,其中 CONTAINER 部分又包含了 SIDEBAR、CONTENT、QUICK SIDEBAR 几个部分。body部分源码折叠后截图如下:Header 页面顶部 Header contains of logo and top menu bar and it used in all pages. 页面顶部(或头部)应用于所有的页面,包含 logo 、顶部菜单栏等。代码如下图(已折叠,下文同):从截图可见,在 header 结束后,有个 header 和 content 的分割,其 clas...
一、功能概述 前两篇我们分别介绍了EventLoopGroup和EventLoop在netty中的作用。但是仅仅知道这些,可能对netty如何完成一整个网络事件监控到任务分发处理还是有些模糊。本篇我们要分析一下netty的启动流程。在我们使用netty编程的时候,我们的使用ServerBootstrap和Bootstrap来实现服务端和客户端的启动。我们先来看一下这两个类的相关类图:netty定义了抽象类AbstractBootstrap,然后在此基础上实现了ServerBootstrap和Bootstrap...
-----------------------------------------------------------------------------margin 为负?使盒子重叠 ?等高 等高布局 双飞翼布局 ?盒子往一边 推 或者 拉-----------------------------------------------------------------------------bootstrap 应用层 UI 库,出色的栅格系统,无可比拟 learn it 然后脱离 bootstrap 封装自己单独的 栅格系统 https://v3.bootcss.comcss3 媒体查询加了 only 以后,IE就会忽略 不支...