event

【网易官方】极客战记(codecombat)攻略-森林-边地好伙伴backwoods-buddy

时光总嘲笑我的痴心妄想 提交于 2020-02-04 10:43:01
你有一个宠物!训练它说话吧! 简介 你有一个宠物! 你的宠物会对 events 作出回应。在它听到声音时, "hear" 事件会被触发。 要让宠物对 "hear" 事件作出回应,你要使用一个 处理函数 : def speak(event): pet.say("Meow!") pet.on("hear", speak) 默认代码 # 你现在拥有一个宠物! def speak(event): # 你的宠物需要用pet.say()进行回应 # 搜寻一枚硬币,如果找到就建造一个"fire-trap" pass # 这将告诉你的宠物,在听到声音时运行speak()函数 pet.on("hear", speak) # 和你的宠物交流吧! hero.say("Hello Kitty") 概览 这一关将介绍宠物!耶! 使用 pet 来引用你的宠物,就像使用 hero 引用英雄一样。 你可以使用 event handlers 来训练宠物做事。 宠物可以对 *event 会做出反应,例如 "hear" ,正在听你讲话! event handler 则是在 event 发生时执行的函数。 要训练宠物对 event 做出反应,你需要使用 on() 函数: pet.on("hear", speak) 这里意思是宠物在听到声音时会执行函数 speak() 。 边地好伙伴 解法 # 你现在拥有一个宠物! def

学习websocket

倾然丶 夕夏残阳落幕 提交于 2020-02-04 07:25:23
为什么要引入websocket? http协议只能由客户端向服务器端发送请求!服务器端无法向客户端主动发送信息。每个http响应对应一个http请求。 这种单向请求的特点,对于会发生连续变化的状态,客户端想要得知就非常麻烦,只能依靠http长轮询或者http短轮询来不断地向服务器发送请求去获取状态。这样做很浪费带宽和时间。 websocket的出现就解决了这个问题。websocket是提供全双工通信,只需要建立一次连接,就可以一直保持连接状态。客户端可以主动地向服务器发送信息,服务器可以主动的推送消息给客户端。 websocket创建之后,会有一个http请求发送到浏览器发起连接。在获得服务器响应连接成功之后。建立的连接会使用http升级从http协议交换为websocket协议。由于websocket使用了自定义的协议,所以url模式也不太相同。未加密的连接不再是http://而是ws://,加密的连接也不再是https://而是ws://。 使用自定义协议而非http协议的好处是:能够在客户端和服务器端发送少量的数据,而不必担心http那样子节级的开销。由于传送的数据包很小,因此websocket非常适合移动应用。 1.WebSocket API var scoket=new WebSocket("wss://echo.websocket.org");

微信小程序监听左右滑动事件,进行切换操作

自闭症网瘾萝莉.ら 提交于 2020-02-03 23:36:37
页面: < van-tabs class = "tabs-main" active = "{{ tab.active }}" bind:change = "onChange" bindtouchstart = 'touchstart' bindtouchmove = 'touchmove' bindtouchend = 'touchend'> </ van-tabs > JS: // pages/subjectOne/subjectOne.js //触屏开始点坐标 var startDot = { X : 0 , Y : 0 }; //触屏到点坐标 var touchDot = { X : 0 , Y : 0 }; var time = 0 ; //触屏时间 var number; //定时器ID Page ({ /** * 页面的初始数据 */ data: { }, onAnswerRaidonChange(event) { this .setData({ radio: event.detail }); console.log( this .data); }, /** * 触屏开始计时和获取坐标 */ touchstart: function (event) { startDot. X = event.touches[ 0 ].pageX; startDot. Y = event

事件,事件冒泡,事件捕获

泪湿孤枕 提交于 2020-02-02 21:17:41
事件 浏览器客户端上客户触发的行为都称为事件 所有的事件都是天生自带的,不需要我们去绑定,只需要我们去触发。 通过 obj.事件名 =function(){} 事件名 :onmouseover onmouseout onmousedown onmousemove onmouseup Onclick onchange onfocus onblur 等等 当用户触发一个事件时,浏览器的所有详细信息都存在一个叫 event的对象上。 我们把他叫事件对象 所有事件在绑定方法的时候,天生自带一个参数就叫 event。 鼠标的坐标   Event.clientX   Event.ClientY Event 的兼容性 在 chrome下 event是 undefined 在 Ie低版本下是 null,火狐下会报错 document . onclick = function ( e ){ var e = e || window . event } 2. 事件冒泡 什么叫事件冒泡 当给父子元素的同一事件绑定方法时,触发了子元素身上的事件,执行完毕之后,也会触发父级元素的相同事件,这种传播机制叫事件冒泡。 取消事件冒泡 Event对象有个属性叫 cancelBubble默认值是 false 改成 true就取消当前事件冒泡 2. 事件捕获 给一个元素绑定事件,普通写法是 obj.onclick

教你如何用python和pygame制作一个简单的贪食蛇游戏,可自定义

风流意气都作罢 提交于 2020-02-02 09:54:30
1.效果图 2.完整的代码 #第1步:导出模块 import pygame, sys, random from pygame.locals import * # 第2步:定义颜色变量,在pygame中采用的color是三色原RGB的数值法 # 目标方块儿红颜色 redColor = pygame.Color(255, 0, 0) # 背景颜色为黑色 pinkColor = pygame.Color(255, 192, 203) #黑色:0,0,0 #粉红色=pink=(255, 192, 203) # 蛇颜色为白色 whiteColor = pygame.Color(255, 255, 255) # 第3步:定义游戏结束 def gameOver(): pygame.quit() sys.exit() # 第4步:定义main函数 定义入口函数 def main(): # 初始化pygame,很关键 pygame.init() # 定义一个变量 控制速度 fpsClock = pygame.time.Clock() # 创建一个窗口界面及大小 playSurface = pygame.display.set_mode((640, 480)) pygame.display.set_caption('<-自定义贪吃蛇->DIY') #游戏标题 # 初始化目标方块的位置

13.6 模拟事件

大城市里の小女人 提交于 2020-02-02 08:41:37
在 document 对象上调用 document.createEvent() 方法创建 event 对象,接收一个参数,要创建的事件的字符串 参数 说明 UIEvents UI 事件,DOM3中是UIEvent MouseEvents 鼠标事件,DOM3中是MouseEvent MutationEvents DOM 变动事件,DOM3中是MutationEvent HTMLEvents HTML 事件,没有对应的 DOM3级事件 创建对象-初始化-触发事件(dispatchEvent方法) 一、DOM 中的事件模拟 1.模拟鼠标事件 var btn = document . getElementById ( 'myBtn' ) ; var event = document . createEvent ( 'MouseEvents' ) ; //创建鼠标事件 event . initMouseEvent ( 'click' , true , true , document . defaultView , 0 , 0 , 0 , 0 , 0 , false , false , false , false , 0 , null ) ; //初始化鼠标事件 btn . dispatchEvent ( event ) ; //触发事件 模拟鼠标事件的初始化方法为

DOM 事件模型

大城市里の小女人 提交于 2020-02-02 05:56:53
事件 HTML元素事件是浏览器内在自动产生的,当有事件发生时html元素会向外界(这里主要指元素事件的订阅者)发出各种事件,如click,onmouseover,onmouseout等等。 DOM事件流 DOM(文档对象模型)结构是一个树型结构,当一个HTML元素产生一个事件时,该事件会在元素结点与根结点之间的路径传播,路径所经过的结点都会收到该事件,这个传播过程可称为DOM事件流。 主流浏览器的事件模型 早在2004前在HTML元素事件的订阅,发送,传播,处理模型上各浏览器实现并不一致,直到DOM Level3中规定后,多数主流浏览器才陆陆续续支持DOM标准的事件处理模型 — 捕获型与冒泡型。 目前除IE浏览器外,其它主流的Firefox, Opera, Safari都支持标准的DOM事件处理模型。IE仍然使用自己的模型,即冒泡型,它模型的一部份被DOM采用,这点对于开发者来说也是有好处的,只使用DOM标准,IE都共有的事件处理方式才能有效的跨浏览器。 冒泡型事件(Bubbling) 这是IE浏览器对事件模型的实现,也是最容易理解的,至少笔者觉得比较符合实际的。冒泡,顾名思义,事件像个水中的气泡一样一直往上冒,直到顶端。从DOM树型结构上理解,就是事件由叶子结点沿祖先结点一直向上传递直到根结点

cocos2d-x基础 - 用户交互事件处理

試著忘記壹切 提交于 2020-02-02 00:44:01
cocos2d-x基础 - 用户交互事件处理 1. 单触摸点 单触摸点的侦听器定义方式: auto listener = EventListenerTouchOneByOne : : create ( ) ; 接下来定义单触摸点事件函数: // 触摸开始 listener -> onTouchBegan = [ ] ( Touch * t , Event * e ) { if ( e -> getCurrentTarget ( ) -> getBoundingBox ( ) . containsPoint ( t -> getLocation ( ) ) ) { log ( "点击事件" ) ; } return true ; // onTouchBegan如果后面还有侦听移动和结束信息就要true } ; // 触摸点移动 listener -> onTouchMoved = [ ] ( Touch * t , Event * e ) { if ( e -> getCurrentTarget ( ) -> getBoundingBox ( ) . containsPoint ( t -> getLocation ( ) ) ) { log ( "触摸点移动了" ) ; } } ; // listener -> onTouchEnded = [ ] ( Touch * t ,

事件对象——DOM中的事件对象

被刻印的时光 ゝ 提交于 2020-02-01 23:54:48
触发DOM上的交互事件会生成一个event对象,用以保存事件的信息。比如鼠标交互的事件会保存鼠标的位置,键盘交互的事件会保存键的值。 1.DOM0级和DOM2级事件处理程序在进行事件处理时都会有一个event对象传入。例如event.type会保存事件类型名称。 2.HTML事件处理程序中的变量event保存有event对象。 3.event对象的属性和方法:    1.bubbles。布尔值,用以表明事件是否冒泡。    2.cancelable。布尔值,用以表明是否可以取消事件的默认行为。通常和preventDefault()配合使用。   3.defaultPrevented。布尔值,值为true表明已经调用了preventDefault()。(DOM3新增)   4.trusted。布尔值,值为true表明事件是浏览器生成的,false表明是开发者通过js创建的。(DOM3新增)    5.currentTarget。Element,事件处理程序当前正在处理事件的那个元素,也就是说事件处理程序被添加的那个元素,即事件处理处理程序的this值的指向。    6.target。Element,事件的目标。   7.detail。与事件相关的细节信息。    8.eventPhase。调用事件处理程序的阶段。1表示捕获阶段,2表示处于目标阶段,3表示冒泡阶段。    9

手机端TOUCH

回眸只為那壹抹淺笑 提交于 2020-02-01 14:33:20
client / clientY:// 触摸点相对于浏览器窗口viewport的位置 pageX / pageY:// 触摸点相对于页面的位置 screenX /screenY:// 触摸点相对于屏幕的位置 identifier: // touch对象的unique ID event.preventDefault();// 阻止浏览器默认事件,重要 touchstart: // 手指放到屏幕上的时候触发 touchmove: // 手指在屏幕上移动的时候触发 touchend: // 手指从屏幕上拿起的时候触发 touchcancel: // 系统取消touch事件的时候触发。至于系统什么时候会取消,不详。。 <div style='height:500px;width:100%; border:1px solid #000;' id='canvas'> <script> var canvas = document.getElementById('canvas'); function touchStart(event){ event.preventDefault(); alert(123) } function touchMove(event){ event.preventDefault(); alert(456) } function touchEnd(event){ event