execCommand没有选择?

时间:2012-11-15 20:55:42

标签: javascript jquery html contenteditable execcommand

我有以下div:

<div contenteditable="true" unselectable="off" id="foo">

在这个div里面,我希望每次用户输入时都会使特定数量的单词看起来是粗体。因此,我有以下changelistener:

$('#foo').live('focus', function() {
   before = $(this).html();
}).live('blur keyup paste', function() { 
   if (before != $(this).html()) { $(this).trigger('change'); }
});

$('#foo').live('change', function() {
   // make certain words bold
   document.execCommand ('bold', false, null); // doesn't work
});

我尝试使用 document.execCommand(),但只有当我选择要制作粗体的文字时,它才有效。但我不想选择文字,因为用户不知道应该粗体的单词。

1 个答案:

答案 0 :(得分:1)

如果不首先选择execCommand,则不能使用execCommand粗体显示文本。

我不明白你在做什么,但如果你知道你想要加粗的单词,只需用编辑器html中的<strong>your word</strong>替换它们,使用js。