xGetElementById 콘솔 경고
CMS/프레임워크 | Rhymix 2.1 |
---|---|
개발 언어 | PHP 7.4 |
글 읽기 화면에 나오는 콘솔 경고창을 없에 보고싶습니다.
DEPRECATED : xGetElementById() is deprecated in Rhymix.
더 이상 xGetElementById() 지원 하지 않는다는 경고 같은데요
/common/js/x.js 9번째줄이 뜹니다.
function xDeprecate(funcName) {
var msg = 'DEPRECATED : '+funcName+'() is deprecated in Rhymix.';
if (typeof console == 'object' && typeof console.log == 'function') {
console.log(msg);
}
}
xGetElementById()가 사용된곳을 찾을 방법이 있을까요?

톰캣
Lv. 11
시대의 흐름에 뒤떨어지지 않도록 아주 천천히지만 노력하고 있습니다.
댓글 13
에디터 사용중이시면 해당 에디터에서 프로젝트 단위로 찾기 옵션이 있습니다.
대부분 컨트로 + 쉬프트 + f 을 통해서 찾을 수 있는데 리모트 내에 있는 파일을 찾는 기능이 아니라서 서버내에서 찾아야 할 경우 다른 방법을 써야 할거예요.
근데 코어에서도 충분히 많은곳에서 xGetElementById 을 사용중이므로 굳이 그걸 수정하려고 노력하시지 않으셔도 됩니다.
냅두시길 권장드려요 ㅠ
답변 감사합니다.
xGetElementById 라고 검색을 해보면
\files\cache\template\modules\ 에서만 결과가 나오네요.
근데 이건 이미 캐시된 파일이라 고쳐도 의미가 없지 않나요?
실제로 사용하는 곳을 찾을 수 있도록 stack trace를 추가해야겠네요.
수십년 전부터 지원되던 getElementById를 두고 왜 저런 이상한 함수를 쓰는지...
수정) 크롬 기준으로 console.log 대신 console.warn을 쓰면
어느 함수가 호출해서 경고가 떴는지 볼 수 있습니다.
위젯 페이지 편집 화면에서 xGetElementById 때문에 콘솔이 너무 지저분하더군요. 디버깅할 때 방해가 되는 듯 합니다.
가능하면 덜어내는 편이 좋다고 생각합니다만... 너무 많아서 쉽지는 않더군요.
document.getElementById 로 일괄 치환해도 무방합니다.
근데 \files\cache\template\modules\ 에서만 결과가 나오고 있습니다.
modules/aaa/bbb/ccc.html 을 변환해서 캐싱해 놓은 것입니다.
원본을 수정하셔야겠지요.
*.php로 필터링해서 찾아서 저 캐싱 폴더에서만 나왔나보네요
.html도 포함했으면 나왔겠네요.감사합니다.
패치 감사합니다!
\rhymix\modules\editor\skins\ckeditor\js\xe_textarea.js 도 수정 부탁드립니다.
2번째 3번째줄에 xGetElementById 이 이용되고 있네요 이거수정하니 에러가 안뜹니다