CKEditörde Karakter Sayacı (Word Count)

Merhaba arkadaşlar, bugünkü yazımda CKEditörde nasıl karakter sayacı ekleyeceğimizi anlatacağım.

Aslında jQuery(‘formname’).val().length gibi çalışması gerekirken CKeditör javascript ile değiştirip iframe gibi açtığından direkt olarak karakter sayısı alınamıyor. Bu yüzden biraz takla atmak lazım. O da şu şekilde oluyor:

Aramalarım sonucunda şurada bulduğum kodu azıcık modifiye ederek işimi gördü:

?View Code JAVASCRIPT
1
2
3
4
5
                    function word_count(form_adi){
                    	text_value=CKEDITOR.instances.form_adi.getData();
                    	var temiz = text_value.replace(/<[^<|>]+?>| /gi,''); //böylece html i de ayıklamış oluyoruz sayaç için, eğer isteniyorsa bu satırı silebilir ve aşağıdaki temiz yerine text_value yazabilirsiniz.
                    	return temiz.length>7 ? temiz.length-7 : temiz.length; //boş nbsp atıyor ondan -7
                    }

var $uzunluk = word_count(news_title); gibi kullanarak (tırnak içinde (string) değil; dikkat!) kullanabilirsiniz.

Tabi bunu ckeditörde her karaktere basınca tetiklemek lazım, o da şöyle olacak: news_title yerine kendi istediğinizi yazın:

?View Code JAVASCRIPT
1
2
3
4
5
6
7
8
9
10
CKEDITOR.instances["news_snippet"].on("instanceReady", function() {
this.document.on("keyup", function(){
//her tuşa basınca yapılacak işlem
});
 
this.document.on("paste", function(){
//copy paste basınca yapılacak işlem
});
 
}

Umarım birilerinin işine yarar,

Afiyet olsun!

VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.20_1166]
Rating: +1 (from 1 vote)
CKEditörde Karakter Sayacı (Word Count), 10.0 out of 10 based on 1 rating