0

我有一个contenteditable=true包含多种 CSS 样式(粗体、斜体、...)的框。

如果我写接近粗体文本,新文本也将以粗体书写。有没有办法知道,使用 Javascript,哪些属性将应用于文本?

编辑:

这是 JFiddle 的一个小例子:http: //jsfiddle.net/WgCBZ/

如果我写在粗体文本中或之后,我会写粗体,如果我写在无样式文本中或之后,我会写没有样式。

我想知道将在按键上写的文本的样式。

$(document).keypress(function(event) { 
  // Find the style
  // If bold will be written alert "bold"
  // If italic will be written alert "italic"
  // else alert ""
});
4

1 回答 1

2

您可以使用 查找当前是否为目标启用了特定命令queryCommandState,这将返回目标当前状态命令的布尔值。

if(document.queryCommandState('bold')){
  // The target (cursor) is currently bold
}

您可以在https://developer.mozilla.org/en-US/docs/Rich-Text_Editing_in_Mozillacontenteditable的MDN 中找到可用的命令

于 2013-06-18T14:28:07.817 回答