我正在尝试使用 WebSharper 提供的 JQuery 来捕获以下事件:selectstart。
所以我写了以下代码:
JQuery.Of(".editorArea").On("selectstart", fun x ->
(
JavaScript.Log("test")
true
)
)
问题是这永远不会test
在控制台中打印字符串。而且我不知道如何使用具有该obj
类型的 x ,因此我无法真正访问事件信息。
我正在尝试使用 WebSharper 提供的 JQuery 来捕获以下事件:selectstart。
所以我写了以下代码:
JQuery.Of(".editorArea").On("selectstart", fun x ->
(
JavaScript.Log("test")
true
)
)
问题是这永远不会test
在控制台中打印字符串。而且我不知道如何使用具有该obj
类型的 x ,因此我无法真正访问事件信息。
除非您将事件绑定到 textarea、input:password 或 input:text,否则您的代码没有任何问题。在这种情况下,您需要收听“select”事件而不是像下面的示例中的“selectstart”(注意事件对象的显式向下转换Dom.Event
以访问其信息):
[<InlineAttribute "$elt.value.substring($elt.selectionStart, $elt.selectionEnd)">]
let selectedText elt = X<string>
let textareaSelection() =
TextArea [Text "Select me"; Attr.Class "editorArea"]
|>! OnAfterRender (fun _ ->
JQuery.Of(".editorArea").On("select", fun x ->
(As<Dom.Event> x).CurrentTarget
|> selectedText
|> JavaScript.Log
true)
)