elm - 如何在 elm 的文本/输入框中自动选择/突出显示文本

标签 elm

elm 中有没有办法做与 javascript 中 document.getElementById("test").select() 相同的事情?

我有一个输入字段,当您在 StackOverflow 上单击此处的共享时,我希望以与突出显示的共享 URL 非常相似的方式进行操作:enter image description here

即使像 github 上那样,当您需要单击元素来突出显示它时也可以:enter image description here

我知道如何使用端口 ( eg. ) 执行此操作。 但我更喜欢直接在 Elm 中完成。这可能吗?在 Elm 的 future 版本中可能吗?

谢谢

最佳答案

目前有一个具有一些类似功能的软件包,位于 elm-lang/dom ,但它们依赖于 native Javascript 调用。 See the focus example here .

Elm code :

focus : Id -> Task Error ()
focus =
  Native.Dom.focus

以及 native 代码...

function focus(id)
{
    return withNode(id, function(node) {
        node.focus();
        return _elm_lang$core$Native_Utils.Tuple0;
    });
}

如果您想构建一个不使用端口的本地包,您当前必须构建一个 native 包,这可以工作,但将来可能无法向后兼容,并且您将无法公开列出该包。

我建议使用端口。

关于elm - 如何在 elm 的文本/输入框中自动选择/突出显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45483506/

相关文章:

列表中的 Json.Decode.Pipeline (elm 0.18)

Elm:多个可能命名的模块

elm - 使用 elm-css 指定 CSS 内容属性

Elm Game of life 程序变得无响应 - 有没有办法优雅地失败?

functional-programming - 是否有一种不那么冗长的方式来解开 Elm 中的值

elm - 有条件地在 Elm 中的表单提交上切换 `preventDefault`

haskell - 如何在 Helm 中合并信号?

elm - `exposing (..)` 在榆树中是什么意思?

elm:不带参数定义订阅端口

elm - Elm 中 Url.Parser.custom 的第一个参数