2016-08-30 56 views
1

我想製作一個自定義文本stylizer thingy ...因此,如果用戶在textarea中編寫文本並選擇其中的一部分,他將能夠使用我的自定義「後期設計師」按鈕。就像這裏,在Stackoverflow中。可能有人幫助我,我發現在這個論壇上沒什麼......用jQuery更改textarea中的選定文本

HTML

<div id="makeItBold" style="cursor: pointer;">B</div>  
<textarea id="text">I'm going to make THIS bold!</textarea> 

JQUERY

$(document).ready(function() { 
    $("#makeItBold").click(function() { 

     if ($(this.selected).text().contains "<b>" or "</b>"){ 
      //if the selected text is already bolded, then remove it 
      ??? 
     } else { 
      //make it bold 
      ??? 
      $(this.selected).text().replace(this.selected, "<b>" + this.selected + "</b>"); 
     } 
    }); 
}); 
+0

所以,你想建立一個WYSIWG編輯器?像[this](http://ckeditor.com/download)一樣? – empiric

回答

0

要做到這一點最簡單的方法是切換一個CSS類上#makeItBold點擊使用jQuery,並給這個CSS類font-weight:bold

添加這個CSS類

.bold{ 
    font-weight:bold; 
} 

,並使用該jQuery函數

$('#makeItBold').click(function(){ 
     $('#text').toggleClass('bold'); 
    }) 

檢查此鏈接https://jsbin.com/devatejosu/edit?html,js,output

+0

他想讓選擇加粗,而不是textarea內的所有內容...... – empiric