草庐IT

dom-events

全部标签

javascript - JavaScript 中的组件间通信

我需要在Web应用程序中进行组件间通信,并且正在考虑实现此目的的不同方法。我有一些想法,但欢迎其他想法。首先,一个快速简单的例子。我在异步加载的页面上有两个独立的组件。我所说的组件是指具有与之关联的JavaScript对象的HTMLblock,该对象包括html中节点上的基于jQuery的行为。当用户与一个组件交互时,其他组件应该发生变化,反之亦然。这里要记住的关键是每个组件都应该是一个独立的单元。它可以在应用程序的不同部分甚至不同的应用程序中重复使用。所以它不知道页面上其他组件的存在。我目前对解决方案的想法包括让组件监听它们感兴趣的自定义事件,以及在发生操作时发送自定义事件。因此,每

javascript - 元素的事件列表

有没有办法在javascript中找到一个元素的所有事件?或解除元素与所有事件绑定(bind)的方法?谢谢。 最佳答案 当然!看看这个绑定(bind)/取消绑定(bind)事件http://api.jquery.com/category/events/并使用此jQuery代码片段以键对“事件名称/函数委托(delegate)”的哈希集的形式获取绑定(bind)到元素的所有事件jQuery(elem).data('events'); 关于javascript-元素的事件列表,我们在Stac

Javascript 检查键盘状态

我正在制作一个简单的Javascript游戏,需要能够检查是否按下了某些键。我已经尝试绑定(bind)到onkeydown事件,但我遇到的问题是双重的:首先,它不会让我检查是否随时按下了多个键。其次,在开始发送垃圾邮件事件之前,它会在按住键后暂停。在我的代码中,我可以有一个事件,或者一个函数,每毫秒检查一次键是否被按下。既然这是一个游戏,我真的没有问题。 最佳答案 您可以同时使用onkeydown和onkeyup:varpressed={};element.onkeydown=function(e){e=e||window.even

javascript - 如何将Backbone.View绑定(bind)到DOM中类似元素列表中的 'single' DOM元素

我具有以下页面结构:Label1Label2............这是过于简单的View:varMyView=Backbone.View.extend({el:$('.listOfPosts'),initialize:function(){_.bindAll(this,"postClicked");},events:{"click.wcCheckbox":"postClicked"},postClicked:function(){alert("Gotaaclickinthebackbone!");}});问题:我想知道被点击的帖子的数据ID。使用简单的JQuery,我可以执行以下操作

javascript - 如何禁用 dijit.form.NumberSpinner 小部件上的鼠标滚轮事件?

我在基于dojo的应用程序中使用了一些dijit.form.NumberSpinner小部件,所有这些小部件都连接到onChange操作。当一个区域有很多NumberSpinner时会出现问题:用户滚动页面并在使用鼠标滚轮滚动时意外地用意外值填充NumberSpinner字段遍布整个地区。是否可以通过某种方式禁用dijit.form.NumberSpinner小部件上的鼠标滚轮事件? 最佳答案 如果您永远不需要它,并且您可以访问dojo源代码并且能够进行自己的构建,请在dijit/form/_Spinner.js上注释这一行:pos

javascript - JQuery 手机 : inline data-role ="page" javascript being retain when page is released from DOM?

使用此调用Delete得到如下对话框页面:$("#deleteButton").live("click",function(){alert("thisalertincrements");});DialogDeleteCompanySoundsgoodCancel似乎保留了live("click"..从以前的任何调用绑定(bind)到此对话框,然后绑定(bind)live重拨。因此,如果我分别调用该页面4次,在第四次调用对话框页面时,它将弹出4个警告屏幕。有没有办法让javascript仍然在data-role="page"内?因此它可以加载ajax但不会增加“实时”绑定(bind)。我

javascript - 在 Chrome 扩展程序中使用时不会触发 addEventListener

我正在尝试制作一个Chrome扩展程序,它将为给定页面搜索不同的缓存数据库。但是,它并没有像我预期的那样工作。varx;varimg=document.getElementsByTagName("img");for(xinimg){img[x].addEventListener('click',openPage,false);}functionopenPage(event){alert("clicked");vare=event.target;switch(e.alt){case"WayBackMachine":chrome.tabs.update(tab.id,{url:"http:

javascript - IE8事件坐标

我似乎找不到在IE8中获取事件坐标的方法,它只会触发诸如“pageXundefined”、“clientXundefined”等错误。虽然它在其他浏览器中工作正常。这就是我想要做的:document.onmousemove=setcoord;functionsetcoord(e){varxxcoord=e.pageX||(e.clientX+document.body.scrollLeft);varyycoord=e.pageY||(e.clientY+document.body.scrollTop);}是否有任何解决方法来获取该鼠标位置? 最佳答案

javascript - 使用 RichFaces 4 从 JavaScript 获取 DOM 元素

我目前正在研究迁移到RichFaces4。从我的JS中,我必须使用document.getElementById('myParent:myElement').从JBoss迁移指南中,我了解到不能再使用“document.getElementById”:https://community.jboss.org/wiki/RichFacesMigrationGuide33x-4xMigration-CommonComponentsChanges.有人可以向我解释原因吗?我如何(简单地)将我对该函数的所有调用(超过一千个)更改为其他函数?谢谢。 最佳答案

javascript - 进行多个 fb.api 调用

我刚刚开始使用FacebookGraphAPI。如何仅通过1个FB.api调用来调用多个属性?现在,我有FB.api('/me',function(me){if(me){varmyEmail=me.email;varmyID=me.id;varmyFirst_name=me.first_name;//Otherattributes}});和FB.api('/me/friends',{fields:'name,id'},function(response){varfriends=response.data;}});如何将两个API调用合并为一个调用,例如,仅调用1个FB.api()?所有