event

常用函数封装

喜欢而已 提交于 2019-12-29 00:43:09
1. 获取元素ID var getDom = function(id){ return document.getElementById(id); } 2. 增加事件监听事件 var addEvent = function(id, event, fn){ var el = getDom(id) || document; if(el.addEventListener){ el.addEventListener(event, fn, false); }else if(el.attachEvent){ el.attachEvent('on'+event, fn); } } 3. 获取元素到body边缘的offsetLeft / offsetTop值 var getElementLeft = function(element){ var actualLeft = element.offsetLeft; var current = element.offsetParent; while(current !== null){ actualLeft += current.offsetLeft; current = current.offsetParent; } return actualLeft; } //获取的值是没有'px'单位的 var getElementTop = function

JS移动客户端--触屏滑动事件

好久不见. 提交于 2019-12-28 18:21:25
JS移动客户端--触屏滑动事件 移动端触屏滑动的效果其实就是图片轮播,在PC的页面上很好实现,绑定click和mouseover等事件来完成。但是在移动设备上,要实现这种轮播的效果,就需要用到核心的touch事件。处理touch事件能跟踪到屏幕滑动的每根手指。 以下是四种touch事件 touchstart: //手指放到屏幕上时触发 touchmove: //手指在屏幕上滑动式触发 touchend: //手指离开屏幕时触发 touchcancel: //系统取消touch事件的时候触发,这个好像比较少用 每个触摸事件被触发后,会生成一个event对象,event对象里额外包括以下三个触摸列表 touches: //当前屏幕上所有手指的列表 targetTouches: //当前dom元素上手指的列表,尽量使用这个代替touches changedTouches: //涉及当前事件的手指的列表,尽量使用这个代替touches 这些列表里的每次触摸由touch对象组成,touch对象里包含着触摸信息,主要属性如下: clientX / clientY: //触摸点相对浏览器窗口的位置 pageX / pageY: //触摸点相对于页面的位置 screenX / screenY: //触摸点相对于屏幕的位置 identifier: //touch对象的ID target: /

C#事件EventHandle、Event的使用

浪子不回头ぞ 提交于 2019-12-28 12:15:53
在C#绝大多数的事件开发中,优先使用.net自带的EventHandle事件来编写事件处理。可以解决绝大部分的事件操作,另外有一小部分可以使用委托,加event事件来自定义事件编写,比如在进行自定义控件的事件时使用Eventhandle在控件事件浏览器中找不到,只能使用委托加事件的方式。 EventHandle来编写事件处理的范例 参考链接地址 https://docs.microsoft.com/zh-cn/dotnet/api/system.eventhandler?redirectedfrom=MSDN&view=netframework-4.8 using System; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { Counter c = new Counter(new Random().Next(10)); c.ThresholdReached += c_ThresholdReached; Console.WriteLine("press 'a' key to increase total"); while (Console.ReadKey(true).KeyChar == 'a') { Console.WriteLine("adding one");

Spring 的监听事件 ApplicationListener 和 ApplicationEvent 用法

拜拜、爱过 提交于 2019-12-28 00:44:05
什么是ApplicationContext? 它是 spring 的核心,Context我们通常解释为上下文环境,但是理解成容器会更好些。 ApplicationContext则是应用的容器。 Spring把Bean(object)放在容器中,需要用就通过get方法取出来。 ApplicationEvent 是个抽象类,里面只有一个构造函数和一个长整型的timestamp。 ApplicationListener 是一个接口,里面只有一个onApplicationEvent方法。 所以自己的类在实现该接口的时候,要实装该方法。 如果在上下文中部署一个实现了ApplicationListener接口的bean, 那么每当在一个ApplicationEvent发布到 ApplicationContext时, 这个bean得到通知。其实这就是标准的Oberver设计模式。 下面给出例子: 首先创建一个ApplicationEvent实现类: 1 package com.spring.event; 2 3 import org.springframework.context.ApplicationEvent; 4 5 public class EmailEvent extends ApplicationEvent { 6 /** 7 * <p>Description:</p> 8 */ 9

spring 事件机制

浪子不回头ぞ 提交于 2019-12-28 00:43:21
spring的事件机制采用了观察者设计模式。 关键点在于ApplicationContext的两个成员:ApplicationEvent ApplicationListenter。 很显然ApplicatonEvent是java事件在Spring中的实现,用户要自定义一个spring事件,只需要继承自ApplicatonEvent;而ApplicationListener则是一个监听器,用户的自定义监听器同样需要实现ApplicationListener接口,并重写onApplicationEvent(ApplicationEvent event)方法。 定义完事件和监听器后需要在spring中进行配置。很简单,就是将监听器配置为一个bean:<bean class="com.lincoln.spring.EmailListener"/>。 第三步,触发事件:直接调用ApplicationContext的publishEvent(event)方法。 实例如下: 1、定义一个event: public class EmailEvent extends ApplicationContextEvent{ public EmailEvent(ApplicationContext source){ super(source); } private String address ;

分享as3httpclient的替代品httprequest

允我心安 提交于 2019-12-27 17:53:26
最近在项目开发中,需要用到socket来模拟http请求,dog sun的socket跨域问题大家自行注意了 大致说一下就是需要在server上监听一个843端口,返回策略文件字符串给客户端 这个时候名气最大的自然是as3httpclient了,这里不多说了,我日志里有相关的介绍 但是有时候这个swc过于冗余了。对于我来说,精简代码那么就希望能够更好的压缩容量了 加个swc直接大100多K是不能容忍的。 后面找到一个能应付项目需求的http_loader,这里感谢原作者并给出地址 https://github.com/chndyyang/fookie/tree/master/http_loader/net/fdream/io 有了这个以后两个文件就满足了需求,下面再分享一下我写好的httprequest,需要自行导入httploader.swc或者将代码加入项目 用法很简单,源码稍微看看就懂了。个人习惯用回调,而不是抛事件,这个因人而异,随便改吧 1 /** 2 * @ClassName HttpRequest.as 3 * @Description socket模拟http请求 4 * All rights Reserved, Designed By Video++ 5 * CopyRight Copyright(C) 2015 6 * Company www.videojj

jQuery中的事件

丶灬走出姿态 提交于 2019-12-27 07:22:44
   加载DOM   以浏览器装在文档为例,在页面加载完毕后,浏览器会通过JavaScript为DOM元素添加事件。在常规的JavaScript代码中,通常使用window.onload方法,而在jQuery中,使用的是$(document).ready()方法。$(document).ready()是事件模块中最重要的一个函数,可以极大地提高Web应用程序的响应速度。jQuery就是用$(document).ready()方法来代替传统JavaScript的window.onload方法的。通过使用该方法,可以在DOM载入就绪时就对其进行操纵并调用执行它所绑定的函数。    $(document).ready()与window.onload区别    (1)执行时机   window.onload方法是在网页中所有的元素(包括元素的所有关联文件)完全加载到浏览器后才执行,JavaScript此时才可以访问网页中的任何元素。而通过jQuery中的$(document).ready()方法注册的事件处理程序,在DOM完全就绪时就可以被调用。此时,网页的所有元素对jQuery而言都是可以访问的,但是,这不是意味着这些元素关联的文件都已经下载完毕。   假设有一个网站,与图片有关的HTML下载完毕,并且已经解析为DOM树了,但很有可能图片还未加载完毕

JQuery小结

这一生的挚爱 提交于 2019-12-27 07:13:44
1.$(document).ready() $(document).ready()是jQuery中响应JavaScript内置的onload事件并执行任务的一种典型方式。它和onload具有类似的效果。但是也有一些差异: 当一个文档完全下载到浏览器中时,会触发window.onload事件。而使用$(document).ready()注册的事件处理程序会在html下载完成并解析为Dom树之后,代码就可以运行,但并不意味着所有关联文件都已经下载完毕。 一个页面中一般只有一个onload事件处理程序,而且只能一次保存对一个函数的引用;而$(document).ready()是可以有多个。 一般来说$(document).ready()都要优于使用onload事件处理程序。但是如果关联文件还没有加载完成,则类似图像高度、宽度的属性的调用就会有问题,因此需要在不同的时候选择合适的方法。 $(document).ready()有三种写法,分别是: > $(document).ready(function() { //this is the coding... }); >$().ready(function() { //this is the coding... }); >$(function() { //this is the coding... }); 2. 事件捕获与事件冒泡 事件捕获

javascript实现拖拽事件(兼容IE8)

北城余情 提交于 2019-12-27 05:17:51
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <sytle type="text/css"> </sytle> <script>function drag(obj) {var obj=document.getElementById(obj);obj.onmousedown=function (event) {//点下鼠标 obj.setPointerCapture&&obj.releasePointerCapture();//兼容ie8,强行捕获页面点击事件到obj event=event||window.event;//event兼容性问题 var ol=event.clientX-obj.offsetLeft; var ot=event.clientY-obj.offsetTop; document.onmousemove=function (event) {//鼠标移动 event=event||window.event; var left=event.clientX-ol; var top=event.clientY-ot; obj.style.left=left+"px"; obj.style.top=top+"px"; }; document

【JDI】at com.sun.tools.jdi.ConcreteMethodImpl.getVariables1(ConcreteMethodImpl.java:495)

梦想的初衷 提交于 2019-12-27 04:29:18
import com.sun.jdi.*; import com.sun.jdi.connect.Connector; import com.sun.jdi.connect.LaunchingConnector; import com.sun.jdi.event.*; import com.sun.jdi.request.BreakpointRequest; import com.sun.jdi.request.ClassPrepareRequest; import com.sun.jdi.request.EventRequest; import com.sun.jdi.request.EventRequestManager; import java.util.List; import java.util.Map; public class SimpleDebugger { static VirtualMachine vm; static Process process; static EventRequestManager eventRequestManager; static EventQueue eventQueue; static EventSet eventSet; static boolean vmExit = false; static Integer lineNo