我試圖按照this answer,但不是使用像他那樣,在他的jsfiddle一個按鈕,我試圖使用列表項:onclick事件
http://jsfiddle.net/hqvDT/108/
它看起來像它應該可以工作,但是當我嘗試選擇一些文本,然後按B
(對於粗體)時,它實際上並不會粗體顯示文本。
怎麼了?
HTML:
<div id="myarea" contenteditable="true"></div>
<ul>
<li onclick="MakeBold();">B</li>
<li><i>I</i></li>
</ul>
CSS:
#myarea {
border:1px solid #000;
padding:5px;
height:150px;
width:400px;
overflow:scroll;
}
ul {
list-style: none;
}
ul li {
width: 35px;
height: 35px;
border: 1px solid #ccc;
text-align: center;
line-height: 32px;
font-size: 14px;
color: #999;
cursor: pointer;
display: inline-block;
margin-right: -5px;
font-weight: bold;
font-size: 18px;
}
ul li:hover {
color: black;
}
JS:
function MakeBold() {
document.execCommand('bold', null, false);
}
這可行,但問題在於突出顯示的文本不會保持突出顯示。我想我只需要使用一個按鈕並相應地設置它。 – Bagwell
您也可以使用一些Javascript來保存選擇並在未選中時重新選擇文本,但我認爲按鈕的樣式是您想要的更簡單的路線。 –