Questions tagged «javascript-events»

请勿使用此标签!JavaScript没有事件构造。使用[dom-events],[jquery-events],[backbone-events];或图书馆/环境+ [事件],例如[node.js] + [事件]

15
如何使用Firebug或类似工具调试JavaScript / jQuery事件绑定?
我需要调试一个使用jQuery进行一些相当复杂和混乱的DOM操作的Web应用程序。某一时刻,某些与特定元素绑定的事件并未触发,只是停止工作。 如果我有能力编辑应用程序源代码,那么我将向下钻取并添加一堆Firebug console.log()语句和注释/取消注释代码段,以试图找出问题所在。但是,假设我无法编辑应用程序代码,并且需要使用Firebug或类似工具完全在Firefox中工作。 Firebug非常擅长让我浏览和操作DOM。不过,到目前为止,我还无法弄清楚如何使用Firebug进行事件调试。具体来说,我只想查看在给定时间绑定到特定元素的事件处理程序列表(使用Firebug JavaScript断点来跟踪更改)。但是Firebug无法查看绑定事件,或者我太笨了,找不到它。:-) 有什么建议或想法吗?理想情况下,我只想查看和编辑绑定到元素的事件,就像今天编辑DOM一样。

15
使用jQuery测试输入是否具有焦点
在我正在构建的网站的首页上,有几个<div>使用CSS :hover伪类在鼠标悬停在它们上方时添加边框。的其中一个<div>包含<form>,如果其中的输入具有焦点,则使用jQuery使用jQuery保留边框。除IE6不支持s :hover之外<a>的任何其他元素外,此方法均能完美运行。因此,仅对于此浏览器,我们使用jQuery :hover使用该$(#element).hover()方法来模仿CSS 。唯一的问题是,现在jQuery可以处理form focus() 和 hover(),当输入具有焦点时,用户将鼠标移入和移出,边框就会消失。 我当时以为我们可以使用某种条件来停止这种行为。例如,如果我们在鼠标移开时测试了任何输入是否具有焦点,则可以阻止边框消失。AFAIK,:focusjQuery中没有选择器,所以我不确定如何实现。有任何想法吗?

9
我可以使用jQuery找到绑定在元素上的事件吗?
我在此链接上绑定了两个事件处理程序: <a href='#' id='elm'>Show Alert</a> JavaScript: $(function() { $('#elm').click(_f); $('#elm').mouseover(_m); }); function _f(){alert('clicked');} function _m(){alert('mouse over');} 有什么方法可以获取绑定在元素上的所有事件的列表,在本例中是with的元素id="elm"?


5
jQuery失去焦点事件
如果输入字段获得焦点,我正在尝试显示一个容器,这是实际的问题,如果失去焦点,则隐藏该容器。jQuery的关注点是否有相反的事件? 一些示例代码: <input type="text" value="" name="filter" id="filter"/> <div id="options">some cool options</div> <script type="text/javascript"> $('#options').hide(); $('#filter').focus(function() { $('#options').appear(); }); </script> 我想做的是这样的: $('#filter').focus_lost(function() { $('#options').hide(); });

5
如何在代码中触发jQuery change事件
我有一个运行正常的更改事件,但需要递归进行。 因此,我有一个在更改时触发的函数,该函数将基于类选择器“更改”其他下拉菜单(注意“ drop downS”,可能有多个)。此代理更改不会触发功能,因此会失败。我如何使它工作? 码 $(document).ready(function () { var activeDropBox = null; $("select.drop-box").change(function () { var questionId = $(this).attr("questionId"); var selectedAnswer = $(this).val(); activeDropBox = this; alert(this.questionId); $.ajax( { type: "POST", url: answerChangedActionUrl, data: { questionId: questionId, selectedValue: selectedAnswer }, success: function (data) { SetElementVisibility(data.ShowElement, questionId); }, error: function (XMLHttpRequest, …

6
$(this)和event.target之间的区别?
我是jQuery的新手,并且按照JavaScript和jQuery的教程:缺少的手册制作选项卡式面板,当作者这样做时,第一行是: var target = $(this); 但是我试图那样做 var target = evt.target; 我得到了这个错误: Uncaught TypeError: Object http://localhost/tabbedPanels/#panel1 has no method 'attr' 当我改evt.target回时$(this),它就像一种魅力。 我想知道$(this)和之间有什么区别evt.target? 如果您需要,这是我的代码: index.html: <!DOCTYPE html> <html> <head> <title>Tabbed Panel</title> <style> body { width : 100%; height: 100%; } #wrapper { margin : auto; width : 800px; } #tabsContainer { overflow: …


5
HTML <input type ='file'>文件选择事件
假设我们有以下代码: &lt;form action='' method='POST' enctype='multipart/form-data'&gt; &lt;input type='file' name='userFile'&gt;&lt;br&gt; &lt;input type='submit' name='upload_btn' value='upload'&gt; &lt;/form&gt; 结果是: 当用户单击“浏览...”按钮时,将打开一个文件搜索对话框: 用户将通过双击文件或单击“打开”按钮来选择文件。 选择文件后是否有一个Javascript事件可以通知我?

5
当元素失去焦点时运行JavaScript
我有一个标准的HTML输入,当它失去焦点时,我想运行JavaScript代码。不幸的是,我的Google搜索没有显示如何执行此操作。 为了清楚起见,我正在寻找一种方法来做到这一点: &lt;input type="text" name="name" value="value" onlosefocus="alert(1);"/&gt;


4
拦截页面退出事件
在我的系统中编辑页面时,用户可能决定导航到另一个网站,这样做可能会丢失所有尚未保存的编辑内容。 我想拦截任何尝试转到另一个页面的尝试,并提示用户确保他们希望这样做,因为他们可能会丢失当前的工作。 Gmail的执行方式与此非常相似。例如,撰写一封新电子邮件,开始在邮件正文中键入内容,然后在地址栏中输入新位置(例如twitter.com等)。它将提示您“确定吗?” 想法该如何复制?我的目标是IE8,但也希望与FF和Chrome兼容。

8
如何使HTML按钮不重新加载页面
我有一个按钮(&lt;input type="submit"&gt;)。单击后,页面将重新加载。由于我有一些hide()在页面加载时调用的jQuery 函数,因此导致这些元素再次被隐藏。我如何使按钮什么也不做,所以我仍然可以添加单击按钮但不重新加载页面时发生的某些操作。

6
我如何获取jquery .val()之后的keypress事件?
我有: $(someTextInputField).keypress(function() { alert($(this).val()); }); 现在,警报总是在按键之前返回值(例如,该字段为空,我键入“ a”,警报给出“''。然后我键入“ b”,警报给出我“ a” ...)。但是我想要按键后的值-我该怎么做? 背景:我想在文本字段中至少包含一个字符后启用一个按钮。因此,我在每个按键事件上都运行此测试,但是使用返回的val(),结果总是落后一步。对我而言,不能使用change()事件,因为在离开文本框之前,该按钮一直处于禁用状态。如果有更好的方法,我很高兴听到它!

15
Chrome中页面加载时的Popstate
Наэтотвопросестьответына 堆栈溢出нарусском:铬ненужнаяперезагрузкастраницы历史API 我正在为我的Web应用程序使用History API,但是有一个问题。我进行Ajax调用以更新页面上的某些结果,并使用history.pushState()来更新浏览器的位置栏,而无需重新加载页面。然后,当然,我使用window.popstate以便在单击后退按钮时恢复以前的状态。 这个问题是众所周知的-Chrome和Firefox对popstate事件的处理方式不同。尽管Firefox不会在首次加载时启动,但Chrome会启动。我想使用Firefox样式,并且不加载事件,因为它只会更新与加载结果完全相同的结果。除了使用History.js之外,还有其他解决方法吗?我不喜欢使用它的原因是-它本身需要太多的JS库,并且由于我需要在已经有太多JS的CMS中实现它,因此我想尽量减少我放入的JS 。 因此,想知道是否有一种方法可以使Chrome在加载时不会启动“ popstate”,或者有人尝试使用History.js,因为所有库都合并到一个文件中。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.