테스트 사이트 - 개발 중인 베타 버전입니다

구글 웹사이트 번역 플러그인 커스텀 -- 업데이트 부탁드립니다 채택완료

대한사랑 2년 전 조회 3,732

https://sir.kr/g5_tip/5410

구글 웹사이트 번역 플러그인 커스텀 사용중인데요

 

갑자기 요며칠 사이에

 

Error: Could not find Google translate frame.

 

이런 에러가 뜨네요

 

고수님들 업데이트 부탁드립니다

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
2년 전

</p>

<p><!DOCTYPE html>

<html lang="ko">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>구글 번역 UI 커스터마이징 - 어포스트 2021.05.27</title>

    <link rel="stylesheet" href="./flags.css">

    <style>

        .translation-links{

            background-color: #f5f5f5;

            max-width: 100%;

            padding: 20px;

            list-style: none;

        }

        .translation-links li{

            height: 30px;

            padding: 5px;

            box-sizing: border-box;

        }

        .translation-links span{

            float: left;

            color: #000;

        }

        .translation-links .flag{

            display: inline-block;

            width: 30px;

            height: 20px;

            margin-right: 10px;

        }

        iframe{

            display:none;

        }

    </style>

</head>

    <body>

        <div class="box_aside">

            <div id="google_translate_element" style="display:none;"></div>

            <!-- "새 번역 링크 UI" -->

            <ul class="translation-links">

                <li><a href="javascript:void(0)" class="english" data-lang="en" title="English"><span class="flag en"></span><span>English</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="ja" title="日本語"><span class="flag ja"></span><span>Japanese</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="zh-CN" title="中文(简体)"><span class="flag zh-CN"></span><span>Chinese(Simplified)</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="zh-TW" title="中文(繁體)"><span class="flag zh-TW"></span><span>aiwanese(Traditional)</span></a></li>

                <li><a href="javascript:void(0)" class="spanish" data-lang="es" title="español"><span class="flag es"></span><span>Spanish</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="de" title="Deutsch"><span class="flag de"></span><span>German</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="ru" title="Русский язык"><span class="flag ru"></span><span>Russian</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="pt" title="Português"><span class="flag pt"></span><span>Portuguese</span></a></li>

                <li><a href="javascript:void(0)" class="japanese" data-lang="fr" title="français"><span class="flag fr"></span><span>French</span></a></li>

            </ul>

            <script src="<a href="https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>" target="_blank" rel="noopener noreferrer">https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script></a>

            <script type="text/javascript">

                /* 구글 번역 초기화 */

                function googleTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: 'ko',autoDisplay: true}, 'google_translate_element');}</p>

<p>                /* 새 UI 선택 클릭 이벤트가 발생하면

                감춤 처리한 구글 번역 콤보리스트에

                선택한 언어를 적용해 변경 이벤트를 발생시키는 코드  */

                document.querySelector('.translation-links').addEventListener('click',function(event) {

                    let el = event.target;

                    if(el != null){

                        while(el.nodeName == 'FONT' || el.nodeName == 'SPAN'){el = el.parentElement;}//data-lang 속성이 있는 태그 찾기

                        const tolang = el.dataset.lang; // 변경할 언어 코드 얻기

                        const gtcombo = document.querySelector('.goog-te-combo');

                        if (gtcombo == null) {

                            alert("Error: Could not find Google translate Combolist.");

                            return false;

                        }

                        gtcombo.value = tolang; // 변경할 언어 적용

                        gtcombo.dispatchEvent(new Event('change')); // 변경 이벤트 트리거

                    }

                    document.body.style.cssText = ""

                    return false;

                });

            </script>

        </div>

        <div>

            가나다

        </div>

</body>

</html></p>

<p>

출처 : https://blogpack.tistory.com/955#google_vignette

도움이 되시길...

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

대한사랑
2년 전
번번히 너무 고맙습니다...

응용해서 적용하면 될 거 같네요

정말 보물단지시네요
2년 전
혹시 원본 보기 버튼을 따로 뺄 수 있을까요??

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인