事件记录

移动端:div在手机页面上随意拖动

夙愿已清 提交于 2020-02-08 22:16:11
1 <!doctype html> 2 <html> 3 <head> 4 <title>弹窗</title> 5 <meta charset="utf-8"> 6 <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.0.min.js"></script> 7 <style> 8 body{margin:0;padding:0;} 9 .barrage{position:fixed;display:block;top:0;} 10 .barrage_name{width:70px;height:70px;background:-webkit-gradient(linear,0 0,100% 100%,from(#f00), to(#0f0));border-radius:50%;} 11 .barrage_name_hover{width:70px;height:70px;background:-webkit-gradient(linear,0 0,100% 100%,from(#ff0), to(#00f));border-radius:50%;} 12 .col1{color:#fff;display: block;padding: 17px;text-align: center;} 13

【1/33】调用堆栈

你说的曾经没有我的故事 提交于 2020-02-06 03:44:46
33 文章目录 调用栈 JavaScript 引擎 执行上下文 创建执行上下文 变量环境: 执行阶段 javascript事件循环 setTimeout setInterval Promise与process.nextTick(callback) 调用栈 调用栈 是解释器(就像浏览器中的JavaScript解释器)追踪函数执行流的一种机制。当执行环境中调用了多个函数函数时,通过这种机制,我们能够追踪到哪个函数正在执行,执行的函数体中又调用了哪个函数。 拥有 LIFO(后进先出)数据结构的栈,被用来存储代码运行时创建的所有执行上下文。 当 JavaScript 引擎第一次遇到你的脚本时,它会创建一个全局的执行上下文并且压入当前执行栈。每当引擎遇到一个函数调用,它会为该函数创建一个新的执行上下文并压入栈的顶部。 每调用一个函数,解释器就会把该函数添加进调用栈并开始执行。每一个进入调用栈的都称为 调用帧 。 正在调用栈中执行的函数还调用了其它函数,那么新函数也将会被添加进调用栈,一旦这个函数被调用,便会立即执行。 当前函数执行完毕后,解释器将其清出调用栈,继续执行当前执行环境下的剩余的代码。 当分配的调用栈空间被占满时,会引发 堆栈溢出 。 JavaScript 引擎 谷歌的 V8 引擎: 在这里插入代码片 这个引擎主要由两部分组成: 内存堆:这是内存分配发生的地方 调用栈

mysql之触发器trigger

非 Y 不嫁゛ 提交于 2020-02-01 08:24:09
触发器(trigger):监视某种情况,并触发某种操作。 触发器创建语法四要素:1. 监视地点(table) 2. 监视事件(insert/update/delete) 3. 触发时间(after/before) 4. 触发事件(insert/update/delete) 语法: create trigger triggerName after/before insert/update/delete on 表名 for each row #这句话在mysql是固定的 begin sql语句; end; 注:各自颜色对应上面的四要素。 首先我们来创建两张表: #商品表 create table g (   id int primary key auto_increment,   name varchar(20),   num int ); #订单表 create table o (   oid int primary key auto_increment,   gid int, much int ); insert into g(name,num) values('商品1',10),('商品2',10),('商品3',10); 如果我们在没使用触发器之前:假设我们现在卖了3个商品1,我们需要做两件事 1.往订单表插入一条记录 insert into o(gid,much)

基于WebStorm记录得HTML--Event(一)事件

房东的猫 提交于 2020-01-26 23:14:36
1.1 事件 事件:是可以被 js 检测到的行为,实质上是一种交互操作。 例如:我们可以给某按钮添加一个 【 onClick 点击事件 】 ,当用户对按钮发生点击时来触发某个函数。 事件的作用: (1) 各个元素之间可以借助事件来进行交互 (2) 用户和页面之间也可以通过事件来交互 (3) 后端和页面之间也可以通过事件来交互(减缓服务器的压力) ps :注意:事件通常与函数配合使用,当事件发生时函数才会执行。 1.2 事 件传播 / 事件传递 / 事件流 一个事件发生后,会在子元素和父元素之间传播( propagation )。这种传播分成三个阶段 第一阶段:从window对象传导到目标节点(上层传到底层),称为“捕获阶段”( capture phase )。 第二阶段:在目标节点上触发,称为“目标阶段”(target phase )。 第三阶段:从目标节点传导回window 对象(从底层传回上层),称为“冒泡阶段”( bubbling phase )。 w3c 规定:事件冒泡 + 事件捕获 + 事件真正的触发者等各个分支构成了 js 的事件机制。 ps :如没有特殊情况,均采用事件冒泡。 ps : HTML 事件采用冒泡机制来处理事件。即 点击 d2 时会先执行 d2 的绑定事件(即执行 test2 函数)。 然后采用事件冒泡将事件传递给上一级 DOM 节点 d1 ,然后 d1

backgroundworker

微笑、不失礼 提交于 2020-01-23 05:22:40
BackgroundWorker是.net里用来执行多线程任务的控件,它允许编程者在一个单独的线程上执行一些操作。耗时的操作(如下载和数据库事 务)在长时间运行时可能会导致用户界面 (UI) 始终处于停止响应状态 。如果您需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用 BackgroundWorker 类方便地解决问题。    该控件有三个事件:   DoWork 、ProgressChanged 和 RunWorkerCompleted   在程序中调用RunWorkerAsync方法则会启动DoWork事件的事件处理,当在事件 处理过程中,调用 ReportProgress方法则会启动ProgressChanged事件的事件处理,而当DoWork事件处理完成时,则会触发 RunWorkerCompleted事件。   您必须非常小心,确保在 DoWork 事件处理程序中不操作任何用户界面对象。而应该通过 ProgressChanged和 RunWorkerCompleted 事件与用户界面进行通信。 编辑本段 DoWork 事件   //以C++为例(现在C++.net的书比较少,所以照顾一下,都以C++为例。不过其它语言的也可以看,差不太多)   void backgroundWorker1_DoWork( Object^ sender,

Chrome 开发工具之Timeline/Performance

旧街凉风 提交于 2020-01-15 05:39:22
之前有说到Element,Console,Sources大多运用于debug,Network可用于debug和查看性能,今天的主角Timeline(现已更名Performance)更多的是用在性能优化方面,它的作用就是记录与分析应用程序运行过程中所产生的活动。 认识Timeline 接下来开始详细的分析下每个标记处的作用(有几个还没标记出来的也有介绍,顺序是按照面板从左到右,从上到下) 记录按钮 是否需要对当前页面的运行进行记录,当打开记录按钮开始执行记录过程的时候,该按钮显示红色 清除按钮 按下后会清除之前的记录信息,瞬间白板 捕获列表 捕获满足后面所列出的条件的相关事件,在这个的右边有选择框供选择 js概况 js函数执行的信息,主要展现在事件调用瀑布图中 如图所示,我们能够看到函数的调用(这里截取了一段短时间内的事件瀑布图) 信息记录和记忆线 当打开状态时,记录在记录过程中如js堆内存、Node节点数等数据的记忆线 如下图,在该记忆线上移动鼠标,会在图的下面出现对应时间点时的各项指标数据 当打开memory时,会在NET下面产生一个HEAP展示图,该图展示了js堆内存的使用情况,如图 绘制信息 记录paint过程的信息,可以在paint profile细节面板中查看,记录绘制信息有产生一定的性能损耗 录制截屏和截屏列表 和network的捕获截屏是一样的,会产生一定的性能损耗

使用事件和消息队列实现分布式事务

◇◆丶佛笑我妖孽 提交于 2020-01-14 02:59:39
原文: http://skaka.me/blog/2016/04/21/springcloud1/ 不同于单一架构应用(Monolith), 分布式环境下, 进行事务操作将变得困难, 因为分布式环境通常会有多个数据源, 只用本地数据库事务难以保证多个数据源数据的一致性. 这种情况下, 可以使用两阶段或者三阶段提交协议来完成分布式事务.但是使用这种方式一般来说性能较差, 因为事务管理器需要在多个数据源之间进行多次等待. 有一种方法同样可以解决分布式事务问题, 并且性能较好, 这就是我这篇文章要介绍的使用事件,本地事务以及消息队列来实现分布式事务. 我们从一个简单的实例入手. 基本所有互联网应用都会有用户注册的功能. 在这个例子中, 我们对于用户注册有两步操作: 1. 注册成功, 保存用户信息. 2. 需要给用户发放一张代金券, 目的是鼓励用户进行消费. 如果是一个单一架构应用, 实现这个功能非常简单: 在一个本地事务里, 往用户表插一条记录, 并且在代金券表里插一条记录, 提交事务就完成了. 但是如果我们的应用是用微服务实现的, 可能用户和代金券是两个独立的服务, 他们有各自的应用和数据库, 那么就没有办法简单的使用本地事务来保证操作的原子性了. 现在来看看如何使用事件机制和消息队列来实现这个需求.(我在这里使用的消息队列是kafka, 原理同样适用于ActiveMQ

jqgrid属性以及事件

Deadly 提交于 2020-01-13 04:36:58
转载 1、属性 参数名称 类型 描述 默认值 是否可以被修改 ajaxGridOptions object 对ajax参数进行全局设置,可以覆盖ajax事件:error,complete 和 beforeSend 空值 是 ajaxGridOptions object 对ajax参数进行全局设置 空值 是 ajaxSelectOptions object 对ajax的select参数进行全局设置,设置editoptions跟searchoptions 参数的select属性值 空值 是 altclass String 用于表格行交替变色的class属性。你可以定义自己的class来替代默认值。只有当altRows属性设置为true时,该属性才起作用 ui-priority-secondary 是,但需要重新加载 altRows boolean 设置表格是否允许行交替变色值 false 是,需重新加载 autoencode boolean 当为 ture 时对url进行编码 false 是 autowidth boolean 如果为ture时,则当表格在首次被创建时会根据父元素比例重新调整表格宽度。如果父元素宽度改变,为了使表格宽度能够自动调整则需要实现函数:setGridWidth false 否 caption String 定义表格名称 空值 否,但是可以用api修改

Unity旋转角色

泄露秘密 提交于 2020-01-09 13:40:11
currentHero为当前角色模型 private void OnGUI ( ) { if ( Event . current . type == EventType . MouseDown ) { //判断当前手指是按下事件 touchFirst = Event . current . mousePosition ; //记录开始按下的位置 } if ( Event . current . type == EventType . MouseDrag ) { //判断当前手指是拖动事件 touchSecond = Event . current . mousePosition ; //记录拖动的位置 currentHero . transform . Rotate ( new Vector3 ( 0 , - ( touchSecond . x - touchFirst . x ) , 0 ) * 1.5f , Space . World ) ; touchFirst = touchSecond ; } } 来源: CSDN 作者: coooliang 链接: https://blog.csdn.net/cl61917380/article/details/103904519

GridView 高级技术

流过昼夜 提交于 2020-01-03 04:45:06
GridView 高级技术 汇总脚注 GridView 的主要目标是显示一组记录,但是你还可以加入一些有趣的信息,如汇总数据。需要如下的操作: 设置 GridView.ShowFooter 为 true ,这样可以显示脚注行(但没有数据) 在 GridView.FooterRow 中加入内容 本例假设正在处理产品列表,一个简单的汇总可以显示产品总价或均价。第一步是确定何时计算这个信息。如果正使用手工绑定(DataSource),那么可以在数据对象绑定到 GridView 之间就读取它的值并进行计算。但如果使用的是声明性绑定(DataSourceID),就要借助别的技术了。 <asp:SqlDataSource ID="sourceProducts" runat="server" ConnectionString="<%$ ConnectionStrings:Northwind %>" ProviderName="System.Data.SqlClient" SelectCommand="select ProductID,ProductName,UnitPrice,UnitsInStock from Products"> </asp:SqlDataSource> <asp:GridView ID="gridProducts" runat="server" DataSourceID=