【问题标题】:Replace blinking text cursor with custom char用自定义字符替换闪烁的文本光标
【发布时间】:2017-06-14 13:04:04
【问题描述】:

我正在创建类似 MySQL cmd 的东西并拥有完整的设计,我想用下划线替换插入点(闪烁的线)。有什么建议吗?

【问题讨论】:

  • 我相信这是操作系统的东西而不是浏览器端......这意味着你不能。我想你可以用 javascript 来伪造它。
  • 我不认为有必要仅仅因为您不知道该怎么做而投反对票。或者甚至做不到。我自己也想做一次。
  • 也许你需要知道这些 Lol 之间的区别。clientheight vs offsetheight vs scrollheight vs innerheight vs outerheight vs style.height vs getComputedStyle(elem,null).getPropertyValue("height")

标签: javascript css


【解决方案1】:

如果您希望这很容易,那么坏消息是根本没有一种快速简单的方法来做到这一点 - 文本光标不是您可以通过几行 javascript 或CSS。

如果你真的想这样做,你将需要用 javascript 编写自己的整个文本输入系统——自己显示光标,等待按键,将它们打印到屏幕上,处理诸如 word 之类的任何事情——手动包装......这是一项相当大的工作。

幸运的是,其他人已经完成了这项工作并可以分享,所以我建议你最好的起点是看看一些现有的例子,看看他们是如何做到的。

这是我通过谷歌搜索找到的一个:http://terminal.jcubic.pl/。不过,您也可以尝试很多其他方法。

希望对您有所帮助。

【讨论】:

  • 我发现了这个:dynamicdrive.com/forums/… 和这个:masswerk.at/jsuix/index.html,我正在尝试使用它,但我是 javascript 的新手,所以需要大量时间来理解它:D。谢谢提示。
  • 您只能更改光标颜色。通过caret-color CSS,仅此而已:((
【解决方案2】:

这是你需要做的。

  • 使输入文本字段不可见,因此可用但不可见。
  • 复制其内容
  • 将其渲染到另一个 div。
  • 并添加自定义框或其他...

Styling text input caret

Hide textfield blinking cursor

【讨论】:

  • 链接参考非常有用。
【解决方案3】:

怎么样:

textarea{
   cursor:url(underlineimage.png),auto;
}

将 textarea 替换为您希望更改光标的任何元素。您需要为您希望光标的外观创建自定义图像。

【讨论】:

  • 啊,我好像误会了这个问题。
猜你喜欢
  • 2011-04-09
  • 2011-12-22
  • 1970-01-01
  • 1970-01-01
  • 2010-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多