标签: cursor-position

更改innerHTML后,在contenteditable div中更改光标位置

我有一个简单的contenteditable div,里面有一些文字.在onkeyup事件上,我想基于正则表达式替换div的整个内容(innerHTML).

例如,

HTML:

some text, more text and $even more text
Run Code Online (Sandbox Code Playgroud)

函数我计划用$($甚至在上面的例子中)获取所有文本并将其包装在span标记中:

div.onkeypress = function() { 
     div.innerHTML.replace(/(some_regexp)/, "<span class='class'>$1</span>"); 
}; 
Run Code Online (Sandbox Code Playgroud)

问题是在这样的替换光标跳转到div的开头之后.我希望它能保持原状.

我想我必须在更改之前保存光标的坐标,然后以某种方式使用它们设置光标,但我该怎么办?:)

我尝试保存范围对象,但编辑后我相信它指向无处.

谢谢!

html javascript contenteditable cursor-position

13
推荐指数
1
解决办法
5602
查看次数

如何从数据库中获取用于在 Graphql 中进行分页的游标?

我在获取真正的游标以解决 GraphQL 中的数据库分页结果时遇到了可怕的问题。无论我使用哪种数据库(SQL 例如 mysql 或 NoSQL 文档例如 mongodb),我都没有办法,我似乎能够获得游标或类似游标的对象。

可能我错过了一些基本概念,但是在搜索了我的 b 之后......关闭我开始严重怀疑官方的 GraphQL 分页文档

https://graphql.org/learn/pagination/

完全基于任何真实的现场体验。

这是我的问题:我怎样才能从这样的 SQL 查询中获得任何与游标相似的东西?

SELECT authors.id, authors.last_name, authors.created_at FROM authors
ORDER BY authors.last_name, author.created_at
LIMIT 10
OFFSET 20
Run Code Online (Sandbox Code Playgroud)

我知道,不应使用基于偏移量的分页,而是将基于光标的导航视为一种补救措施。而且我绝对想治愈我的应用程序中的胶印病。但是为了做到这一点,我需要能够从某处检索游标。

我也明白(忘了我在哪里读到的)主键也不应该用于分页。

所以,我被困在这里。

database cursor-position resolver graphql graphql-js

11
推荐指数
1
解决办法
1150
查看次数

如何将光标锁定在Mac OS X上的窗口内?

我正在尝试为Mac OS X制作一款游戏,它涉及很多快速动作并且在鼠标光标周围投掷.如果用户想要以窗口模式播放,我非常希望将光标锁定在窗口内部以避免在激烈的战斗中意外更改程序(显然,如果用户更改程序或命中时,这将自行取消暂停菜单.)

在Windows上,这可以通过ClipCursor()轻松完成.我在Mac OS X上找不到同等产品.有吗?

macos cursor cursor-position

10
推荐指数
1
解决办法
3843
查看次数

VIM undo:撤消`undojoin`时为什么光标跳到错误的位置?

编辑:

  • 我已经简化了这个功能并澄清了这个问题.
    原始问题仍在页面下方.

  • 已转载到vim_dev邮件列表:https://groups.google.com/forum/#!topic/vim_dev/_Rz3uVXbwsQ

  • 报告为Neovim的错误:https:
    //github.com/neovim/neovim/issues/6276


为什么光标在以下两个示例中的位置不同:

  1. [CORRECT CURSOR POSITION]替换的结果与缓冲区中的先前更改(第3行的添加)相结合,光标位置正确地恢复到缓冲区中的第二行.

    normal ggiline one is full of aaaa
    set undolevels=10 " splits the change into separate undo blocks
    
    normal Goline two is full of bbbb
    set undolevels=10
    
    normal Goline three is full of cccc
    set undolevels=10
    
    undojoin
    keepjumps %s/aaaa/zzzz/
    normal u
    
    Run Code Online (Sandbox Code Playgroud)
  2. [INCORRECT CURSOR POSITION]替换的结果与缓冲区中的先前更改(第4行的添加)相关联,光标位置错误地恢复到缓冲区中的第一行(应该是第3行).

    normal ggiline one is bull of aaaa
    set undolevels=10 " splits the change into separate undo blocks
    
    normal Goline …
    Run Code Online (Sandbox Code Playgroud)

vim undo cursor-position neovim

10
推荐指数
1
解决办法
1058
查看次数

XCode是否有像Visual Studio一样的光标导航堆栈?

Visual Studio跟踪光标位置,让您在这些位置前后移动.例如,您可以键入Ctrl + - 向后导航,按Ctrl + Shift-向前导航.

我看到XCode跟踪你访问过哪些文件的历史记录,但它是否也允许我在光标位置前进和后退?

我问的原因是因为我发现通过使用Command-Double左键单击,我访问函数定义(通常在同一个文件中),然后我想快速返回到我之前在同一文件中的位置.因为我在同一个文件中,文件历史记录导航没用.目前我必须搜索代码来弄清楚我在哪里,这很乏味.

谢谢!

navigation ide xcode cursor-position visual-studio

9
推荐指数
1
解决办法
1559
查看次数

如何阻止光标跳到输入的末尾

我有一个受控的 React 输入组件,我正在格式化输入,如 onChange 代码所示。

<input type="TEL" id="applicantCellPhone" onChange={this.formatPhone} name="applicant.cellPhone" value={this.state["applicant.cellPhone"]}/>
Run Code Online (Sandbox Code Playgroud)

然后我的 formatPhone 功能是这样的

formatPhone(changeEvent) {
let val = changeEvent.target.value;
let r = /(\D+)/g,
  first3 = "",
  next3 = "",
  last4 = "";
val = val.replace(r, "");
if (val.length > 0) {
  first3 = val.substr(0, 3);
  next3 = val.substr(3, 3);
  last4 = val.substr(6, 4);
  if (val.length > 6) {
    this.setState({ [changeEvent.target.name]: first3 + "-" + next3 + "-" + last4 });
  } else if (val.length > 3) {
    this.setState({ [changeEvent.target.name]: …
Run Code Online (Sandbox Code Playgroud)

javascript cursor-position reactjs controlled-component

9
推荐指数
2
解决办法
5365
查看次数

将光标设置为文本框的14个焦点的长度

Hai Guys,我想将光标设置在文本框上长度为14的位置,该文​​本框没有值..我知道最初光标将为0我希望它在14

html javascript textbox onfocus cursor-position

8
推荐指数
1
解决办法
6702
查看次数

C将光标移动到当前行的开头

我想在同一个地方打印当前时间(通过使用printf),但我想在无限循环中执行它,例如:

while(1) {printf("Date and Time are %s", asctime(localtime(&current))); } 
Run Code Online (Sandbox Code Playgroud)

.所以在我使用printf之前,我应该将光标向后移动到它的凝视位置.怎么做 ?

thx提前

c unix cursor cursor-position

8
推荐指数
3
解决办法
8884
查看次数

在"文本"小部件中设置光标位置

是否可以在Tkinter Text小部件中设置光标位置?我找不到任何非常有用的东西.

我能做的最好的是在某个xy坐标处发出一个<Button-1><ButtonRelease-1>事件,但这是一个像素数量,而不是字母数量.

python tkinter cursor-position

8
推荐指数
2
解决办法
1万
查看次数

单击TButton时如何显示TPopupMenu?

我想在单击按钮时显示弹出菜单,但此过程在Delphi XE中有错误.

procedure ShowPopupMenuEx(var mb1:TMouseButton;var X:integer;var Y:integer;var pPopUP:TPopupMenu);
var
  popupPoint : TPoint;
begin
  if (mb1 = mbLeft) then begin
    popupPoint.X := x ;
    popupPoint.Y := y ;
    popupPoint := ClientToScreen(popupPoint);   //Error Here
    pPopUP.Popup(popupPoint.X, popupPoint.Y) ;   
  end;
end;

procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;Shift: TShiftState; X, Y: Integer);
begin
  ShowPopupMenuEx(button,Button1.Left,Button1.Top,PopupMenu1); //Error Here
end;
Run Code Online (Sandbox Code Playgroud)

当点击按钮显示此错误:

[DCC错误] Form1.pas(205):E2010不兼容类型:'HWND'和'TPoint'
[DCC错误] Form1.pas(398):E2197常量对象不能作为var参数传递
[DCC错误] Form1.pas( 398):E2197常量对象不能作为var参数传递

当点击按钮时,有没有更好的方式来显示弹出菜单?

delphi button popupmenu cursor-position

8
推荐指数
2
解决办法
3万
查看次数