我正在使用“添加评论框”,其中包含一些功能,例如将void* consumer(void* param)
{
while(true) {
sem_wait(&full);
sem_wait(&mutex);
if( buffer.size() < 3 ) {
// cancel an attempt to take an item from a buffer
sem_post(&full);
} else {
consume_item();
sem_post(&empty);
}
sem_post(&mutex);
}
}
更改为带有粗体样式的文字,依此类推。问题是当javascript中的str.replace操作完成时,写入区域中的光标会回到起始位置。
[b]text[/b]
答案 0 :(得分:0)
您是否尝试过将重点放在元素上?通常,浏览器(IE除外)将光标重新置于焦点后将其置于原始位置。因为您使用的是jquery:
$("#yourID").focus()
答案 1 :(得分:0)
我认为你应该使用lexter / parser来将bbcode转换为HTML(除非原因是你想通过这样做来学习)。
Here's one that might work for you。它支持默认的bbcode块,并且可以定义你自己的。
<head>
<!-- Optional styling for .xbbcode-* classes -->
<link rel="stylesheet" type="text/css" href="xbbcode.css">
</head>
<body>
<script src="xbbcode.js"></script>
<script>
var text = document.getElementById("comment").innerHTML;
var result = XBBCODE.process({
text: text,
removeMisalignedTags: false,
addInLineBreaks: false
});
console.error("Errors", result.error);
console.dir(result.errorQueue);
console.log(result.html); //=> <span class="xbbcode-b">Hello world</span>
</script>
</body>