[英]How to set a text value for document.activeElement?
知道我的document.activeElement
是一个输入字段(我不知道组件的确切名称,但可能是 Google 的搜索输入字段,例如),我如何以编程方式在其上设置文本?
- 更新
我正在 xul 应用程序中尝试它,在页面加载后通过 javascript。 粘贴命令工作正常,所以我知道该领域有重点。 (我没有放 Xul 标签,因为它只是关于 javascript)
请参阅mozilla 参考。 这与document.getElementById()
类型相同
document.activeElement.value = 'new value';
如果您确定它是输入文本字段,只需设置值:
document.activeElement.value = 'value'
没有看到您的代码及其运行的上下文,我只能推测。 但是,我的猜测是您正在从 XUL 应用程序调用document.activeElement
,这意味着document
是 chrome 文档,而不是内容页面。 在这种情况下,活动元素可能是您用来显示内容的browser
或iframe
元素。
我认为有一点麻烦,因为我在 Xul 应用程序中。 Javascript 应该像在浏览器中一样工作,但事实并非如此。
我所做的工作是(将内容放入剪贴板后):
controller.doCommand('cmd_selectAll');
controller.doCommand('cmd_paste');
如果您希望焦点元素位于与给定应用程序窗口相关的任何位置,例如它可能位于<browser>
元素内,请使用与document.commandDispatcher.focusedElement.value
相同的document.commandDispatcher.focusedWindow.document.activeElement.value
。 这为您提供了cmd_paste
操作的元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.