草庐IT

enable_events

全部标签

javascript - Node.js 事件发射器 : How to bind a class context to the event listener and then remove this listener

有没有办法在事件监听器方法中访问类上下文并有可能删除监听器?示例1:import{EventEmitter}from"events";exportdefaultclassEventsExample1{privateemitter:EventEmitter;constructor(privatetext:string){this.emitter=newEventEmitter();this.emitter.addListener("test",this.handleTestEvent);this.emitter.emit("test");}publicdispose(){this.emi

JavaScript : Simulate Key Events into Textbox/Input

尽管有很多关于如何在JS中模拟按键(keydown/keypress)的文章,但似乎没有一种解决方案适用于我正在使用的浏览器(FirefoxESR17.0.7、Chrome28.0.1500.72、IE10).我测试过的解决方案取自here,here,和here.我想做的是模拟文本区域/输入中的任何击键。虽然我可以追加/删除直接更改“值”的字符,但我看不到其他选项,只能为“向上”、“向下”、“主页”等键输入模拟。根据documentation,应该很简单。例如:vare=document.createEvent("KeyboardEvent");if(e.initKeyboardEve

javascript - event.key 在移动浏览器中对于 keyup、keydown 和 keypress 是未定义的

下面的代码应该简单地抑制任何按键并将按下的键添加到一个div中。这在桌面上运行良好,但在移动设备(safari和chrome)上event.key未定义。varstr='';varel=document.getElementById('#test');document.addEventListener('keypress',function(event){str+=event.key;event.preventDefault();el.innerHTML=str;})event.keyCode和event.keyIdentifier都可用,但将它们转换为字符串会在不同的键盘布局和语言上

javascript - 如何捕获 event.keyCode 并将其更改为另一个 keyCode?

我已经在SO上检查了其他问题,但是他们没有回答我的问题。我只想捕获某些keyCode并将其替换为另一个。我正在处理字符,而不是空格,我不需要松散焦点等。下面是我的代码。但是您可以用您的键码替换这些键码(例如,当按下大写字母“A”时,它应该替换为零0,等等)。想法是替换keyCode。phrase.keypress(function(event){if(event.shiftKey){switch(event.keyCode){//Cyrilliccapitalized"Н"waspressedcase1053:event.keyCode=1187;event.charCode=1187

javascript - Chrome 开发工具 : view all event listeners used in the page

chrome开发工具(或任何扩展)中是否有一个功能,我可以通过它查看某个页面/应用程序上使用的所有事件监听器。编辑:它肯定不是这个问题的重复:HowdoIvieweventsfiredonanelementinChromeDevTools?上述问题解释了如何查找在我们与我们的应用交互时触发的特定事件(我知道如何做到这一点!)。我正在寻找的是我们在应用程序中监听的所有事件的列表以及它们附加到哪些DOM元素。 最佳答案 ChromeDevtool无法为您完成此操作。但是您可以使用chrome提供的API检查控制台中的那些:getEven

javascript - jQuery 文件上传插件 : trigger an event when all files are uploaded

我使用jQuery文件上传插件(http://blueimp.github.io/jQuery-File-Upload/)来管理我的文件上传。它工作得很好。我可以检测到每个文件何时上传并(例如)显示一条消息。但我想检测每个文件何时上传以显示最终消息。如何做这样的事情?下面是我的实际实现:$('#fileupload').fileupload({url:"api/fileManager",dataType:'json',maxFileSize:100000000,//100MBfortesting!dropZone:$(document.body)}).on('fileuploadcha

javascript - 开放层 3 : Remove event listener

在Openlayers3如何删除这样附加的事件监听器:vara=map.on("pointerdrag",function(e){//eventhandler});varb=map.on("pointerdrag",function(e){//eventhandler});如何只删除监听器a并保持b处于事件状态? 最佳答案 啊,这很简单!它在APIDocs:unByKey,但关闭函数的名称非常违反直觉。所以要移除事件监听器a:map.unByKey(a);将删除a监听器但保持b开启。注意:这将适用于OpenLayers3中发出事件的

javascript - JS传单: How to pass (Geo-)json ID to on click event?

我的djangoweb应用程序应该执行以下操作:将Geojson对象传递给View,使用传单映射点,并在用户单击点标记时显示一些附加信息。我不太熟悉js,所以我无法将正确类型的数据绑定(bind)到click事件。这是一个示例geojson对象。如何使用我的click事件访问“id”?vargeojsonFeature={'geometry':{'type':'MultiPoint','coordinates':[[4.939,52.33],[4.9409,52.33]]},'type':'Feature','properties':{'id':'52','popupContent':

javascript - 为什么 'event' 变量即使没有作为参数传递也可用?

我想知道为什么下面的代码在某些浏览器中可以工作?IE。即使click()函数没有参数,但是event变量存在并且在事件触发器对象上调用了dosomething方法?$().click(function(){$(event.target).}); 最佳答案 Whyis'event'variableavailableevenwhennotpassedasaparameter?确实不是。例如,该代码将在Firefox上失败。它不会并且曾经在Firefox上失败。Microsoft使用了一个全局事件变量。DOM2将其定义为处理程序的参数。C

javascript - Angular : Why is my event handled twice?

我有三个Controller:main、product、customer。ControllerA是我的“主页”的一部分。ControllerB和C取决于位置。Controller主要:varMainController=function($scope,$location,$rootScope,ToolbarService){$scope.addClicked=function(){ToolbarService.onAddButtonClick();};};app.controller({MainController:MainController});产品:varProductContr