首页 > 解决方案 > 在库的 Common Lisp 生态系统中,如何使用 Clss 和/或 Plump 而不是 Parenscript 获取 DOM 的活动元素?

问题描述

在浏览器的控制台(firefox)中使用 javascript,我可以这样做:

document.activeElement.placeholder

如果鼠标光标在 StackOverflow 搜索栏中,则上面的代码返回:

"Search…"

我可以使用Parenscript实现相同的目的:

(ps:chain document active-element placeholder)

是否可以使用 CL Plump ( manual ) 和/或Clss ( manual ) 而不是 Parenscript来实现相同的输出?

如果是这样,该怎么做?

我尝试在上面的文档参考中找到它,但我找不到它。不过,我是 CL 的新手。也许我错过了什么。

谢谢。

标签: domcss-selectorscommon-lispparenscript

解决方案


使用 Parenscript 时,您通过 JavaScript 使用浏览器引擎。浏览器在代表文档本身的模型之上有一个用户交互的概念,例如焦点。

Plump 和 CLSS 不是浏览器引擎。它们只有一个已解析的 HTML 文档的对象模型。他们没有像用户交互那样建模任何东西,所以他们也没有像“活动元素”这样的东西。


推荐阅读