当前位置: 首页 > 面试题库 >

JavaScript可编辑的变更事件

郑乐池
2023-03-14
问题内容

当用户编辑divwith contenteditable属性的内容时,我想运行一个函数。什么相当于一个onchange事件?

我使用的是jQuery,因此首选使用jQuery的解决方案。谢谢!


问题答案:

我建议将侦听器附加到由editablehtml" target="_blank">元素触发的关键事件上,尽​​管您需要注意,keydown并且keypress在更改内容本身之前会触发事件。这不会涵盖更改内容的所有可能方法:用户还可以从“编辑”或上下文浏览器菜单中使用剪切,复制和粘贴,因此您可能也想处理cut
copypaste事件。此外,用户可以放置文本或其他内容,因此在那里有更多事件(mouseup例如,)。您可能希望轮询元素的内容作为后备。

2014年10月29日更新

。在撰写本文时,contenteditable当前Mozilla(来自Firefox14)和WebKit/Blink浏览器中的元素均支持该功能,但IE不支持。

演示:

document.getElementById("editor").addEventListener("input", function() {

    console.log("input event fired");

}, false);


<div contenteditable="true" id="editor">Please type something in here</div>


 类似资料:
  • 问题内容: 当用户编辑with 属性的内容时,我想运行一个函数。什么相当于一个事件? 我使用的是jQuery,因此首选使用jQuery的解决方案。谢谢! 问题答案: 我建议将侦听器附加到由editable元素触发的关键事件上,尽​​管您需要注意,并且在更改内容本身之前会触发事件。这不会涵盖更改内容的所有可能方法:用户还可以从“编辑”或上下文浏览器菜单中使用剪切,复制和粘贴,因此您可能也想处理和事件

  • 问题内容: 我正在通过Firefox中的JavaScript编辑CSS渐变。我有一些输入框,用户可以在其中输入1.方向2.第一种颜色3.第二种颜色 这是HTML 回顾一下,用户将指定其3个值,这些值将传递给函数“ renderButton();”。我可以使用哪行更改CSS3渐变的3个值,以便用户可以制作自己的自定义渐变框?我假设它只需要一两行。 PS我意识到这个例子只适用于Firefox。我只想在

  • http://www.primefaces.org/showcase/ui/input/onemenu.xhtml(见可编辑菜单) 有没有办法放置一个占位符,上面写着“点击进入手动输入”这样的文本,或者让用户知道这个下拉列表是可编辑的。找到下面的代码段以供参考。

  • 我只是JavaScript领域的初学者,所以我需要一些专家来指导我如何编辑JavaScript代码,使其一次只扩展一行。 (希望在单击另一行时自动关闭上一行,现在可以一次展开所有行) 这是代码https://jsfiddle.net/4L4e88w6/11/

  • 有没有办法更改不可编辑JTextField的样式?如果文本字段设置为editable=false,我们希望文本字段的背景颜色略为灰色。我想其中一种方法就是 在每个组件上,但这似乎容易出错且乏味。 我想要实现的是:正常的JTextfiel应该按照nimbus外观和感觉的定义显示。只读字段(例如editable=false)应具有不同的背景色。禁用字段应按照nimbus LAF的定义显示。 我在Nim

  • 问题内容: 如果我想将cq5组件设置为在A页中可编辑但在B页中不可编辑,是否可以。 例如:在A页上,我有C组件,我们允许作者打开对话框并编辑该组件。但是我们不允许作者打开对话框来编辑页面B上的组件C。我尝试研究cq:EditConfig 链接,但这还不足以解决我的问题。 问题答案: 您可以在包含之前设置ComponentContext.BYPASS_COMPONENT_HANDLING_ON_IN