问题标签 [dom-events]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3381 浏览

javascript - 一次点击两个事件

我正面临这个问题:

我需要更改ORDER按钮的功能。它应该在事件生成之前触发REFRESH(生成事件)功能。SC_REFRESHSC_ORDER

onlick这意味着我需要在按钮上触发两个事件ORDER- 先是REFRESH,然后是ORDER。两个事件之间有 2 秒的休息时间。的功能REFRESH不会改变。

0 投票
2 回答
1481 浏览

javascript - Javascript事件调用者未传递给参数

我正在使用onmouseoverJavascript 编写以下函数

我的印象是在 Firefox 中应该将事件传递给函数。但是evt似乎以空值出现。有什么可能导致这种情况吗?

编辑 :

调用这个方法的代码是这样工作的:

然后将该字符串附加到页面上的 div 中。我意识到这确实不理想,但我正在使用一个旧框架并尝试在其中插入一些新功能。

0 投票
1 回答
3589 浏览

javascript - 雅虎事件.stopEvent

我试图阻止 JavaScript 事件继续传播,使用 YUI。以下是一些最小的 HTML 和一些最小的 JavaScript,它们演示了这个问题:

HTML:

JavaScript:

我期望发生的是用户可以单击foo添加三键处理程序,然后单击bar. 然后,用户将看到两个警报,barClickTest1并且barClickTest2。相反,会出现所有三个警报。YAHOO.util.Event.stopEvent(e)不符合我的预期,即阻止事件传播到barClickTest3.

我已经在 Firefox 3.0.7 和 Safari 3.2.1 中测试了我的代码。正如您在上面看到的,我也尝试过YAHOO.util.Event.stopPropagation(e)and e.stopPropagation()。他们都没有成功。

这显然是一个人为的例子,尽管它确实证明了这个问题。在真正的解决方案中,我只会在满足某些条件时才阻止事件传播。

我对 JavaScript 事件的理解是不是一团糟?我如何实现我的目标?

0 投票
13 回答
415973 浏览

javascript - 如何检测位置哈希的变化?

我正在使用 Ajax 和哈希进行导航。

有没有办法检查window.location.hash更改是否像这样?

http://example.com/blah #123http://example.com/blah #456

如果我在文档加载时检查它,它会起作用。

但是如果我有基于#hash 的导航,当我按下浏览器上的后退按钮时它不起作用(所以我从 blah#456 跳转到 blah#123)。

它显示在地址框中,但我无法用 JavaScript 捕捉它。

0 投票
6 回答
345356 浏览

javascript - 从 html 表单调用 Javascript

我的问题和示例基于 Jason 在这个问题中的回答

当单击提交按钮时,我试图避免使用eventListener,而只是调用。handleClick onsubmit

我拥有的代码绝对没有任何反应。

为什么handleClick不被调用?

编辑:

请不要建议将框架作为解决方案。

以下是我对代码所做的相关更改,这些更改会导致相同的行为。

0 投票
1 回答
393 浏览

javascript - Safari 2.0 中修改键的键盘事件

我正在使用键盘事件 ( keydownand keyup) 来准确检测用户何时按下或释放 shift 键。

在 Safari 3+ 中,这可以正常工作。然而,Safari 2.0 似乎没有为 shift 键触发键盘事件——事实上,它似乎没有为任何修饰键触发事件......

有谁知道我可以如何处理或解决这个问题?

(在这种特殊情况下,我只需要使用 Safari,因为我在仪表板小部件中使用此代码。)

0 投票
2 回答
2622 浏览

javascript - 如何检测窗口是否真的在 IE8 标准模式下调整了大小?

我的网站有许多针对不同屏幕宽度定制的样式表。当浏览器调整大小时,window.onresize事件会通过查看document.documentElement.clientWidth. 如果是这样,它会依次打开更大的样式表,直到出现滚动条。然后,它以相反的顺序将它们关闭,直到滚动条消失。offsetWidth通过比较来检测滚动条scrollWidth

在 IE8 中,两个新问题混淆了调整大小的检测。一,onresize当滚动条出现或消失时触发,二,d.dE.clientWidth报告没有滚动条的宽度,从 IE7 和所有其他浏览器中断。我的网站现在经常陷入一个循环,其中onresize逻辑激活一个更大的样式表,该样式表创建滚动条,然后触发另一个无法过滤掉的调整大小事件,因为clientWidth滚动条出现或消失导致该事件发生了变化。outerWidth如果 IE8 有我可以检查的东西,这将是一个微不足道的修复。

0 投票
4 回答
5943 浏览

javascript - 类方法不能访问属性

我创建了一个像这样的类:

不幸的是,这this是触发事件(在我的情况下是一个<a>标签),我无法访问类属性。

有什么建议么?

0 投票
2 回答
3984 浏览

javascript - Onleftclick 和 onrightClick Javascript 函数

在我的服务器端代码中,我正在动态构建一个表格,现在我正在添加以下代码来处理行点击。

有什么方法可以使这项工作仅左键单击,然后在右键单击时添加不同的属性以转到不同的位置?

0 投票
3 回答
3871 浏览

javascript - Response.Redirect 和 OnBeforeUnload 可以一起玩吗?

有谁知道如何检测OnBeforeUnload服务器端代码发送的事件Response.Redirect?我想提示用户不要让他们在时间之前离开页面,但是当服务器重定向我时,它不应该提示用户。

我正在使用广泛使用的遗留代码,Response.Redirect我对改变重定向发生的方式不感兴趣。请不要建议我使用 X 重定向方法。

应该可以根据 XMLHttpRequest 对象中的响应代码来执行此操作,因为响应重定向应该发回 302 。

编辑: Response.Redirect 发回 200,在正文中带有重定向代码,然后window.location.href = new page在 ASP.Net 代码中执行。有没有办法获得服务器响应以确定这已经发生?