스마트에디터 입력 용량 체크
$( document ).ready( function() {
setTimeout(function() {
var jbHtml = document.querySelector("iframe").contentWindow.document.querySelector("iframe").contentWindow.document.querySelector(".se2_inputarea");
//키보드 입력을 받았을때
jbHtml.addEventListener("keyup", function(e) {
var text = this.innerHTML;
text = text.replace(/<br>/ig, ""); // br 제거
text = text.replace(/ /ig, "");// 공백 제거
// text = text.replace(/<(\/)?([a-zA-Z]*)(\s[a-zA-Z]*=[^>]*)?(\s)*(\/)?>/ig, ""); // html 제거
var str_len = text.length;
var rbyte = 0;
var rlen = 0;
var one_char = "";
for(var i=0; i<str_len; i++){
one_char = text.charAt(i);
if(escape(one_char).length > 4){
rbyte += 3; //한글3Byte
}else{
rbyte++; //영문 등 나머지 1Byte
}
}
document.querySelector(".intro_size span").innerHTML = rbyte/1000;
//url 이미지 파일 사이즈 체크
const imgreg = /(<img[^>]*src\s*=\s*[\"']?([^>\"']+)[\"']?[^>]*>)/g;
var url_img_size = 0;
while(imgreg.test(text)){
url_img = RegExp.$2.trim();
if(url_img.substr(0,10) == 'data:image'){continue;}
$.get(url_img, function(responseText) {
url_img_size += responseText.length;
total_size = url_img_size + rbyte;
document.querySelector(".intro_size span").innerHTML = total_size/1000;
});
}
// alert(len);
// total_size = url_img_size + rbyte;
// document.querySelector(".intro_size span").innerHTML = total_size/1000;
// if(rbyte > 40000) {
// alert("최대 40000 byte까지 입력 가능합니다.");
// }
});
}, 1000)
}
);