2016-09-12 3 views
0
나는 동적으로 다음과 같은 JS, 즉 "일"에 스페인어로 두 문자열을 번역하고, HTML 문서의 언어 코드가 스페인어 (HTML LANG = "ES")로 설정되어있는 경우 "더 읽기"필요

:JavaScript 문자열을 동적으로 변환하는 방법은 무엇입니까?

$.each(data,function(post, postInfo) { 
     jsonArray.push(postEntry + '<a href="' + postInfo.link + '" class="preview-title"><h2>' + postInfo.title + '</h2></a><div class="preview-meta">Date: ' + postInfo.date + '</div><p>' + postInfo.preview + '...</p><div class="read-more"><a href="' + postInfo.link + '" class="link-button">Read more</a></div>' + postFooter); 
     }); 

나는 이것을 최선의 방법으로 접근하는 방법을 확신하지 못합니다.

var languageCode = $('html').attr('lang'); 

을 그리고 다음과 같은 간단한 검사 구현할 수 :이 접근하는 방법을 조언 감사하겠습니다

if (languageCode === 'es') { 
... 
} else { 
... 
} 

을 문자열 아마이 작동하는 것처럼

언어 코드를 얻기.

+0

번역처럼 뭔가를 할 것이라고는 일반적으로 서버에서 수행, 또는 템플릿 생성하기 전에된다. – zzzzBov

+0

번역 라이브러리를 살펴보십시오. 나는 i18next를 사용해 왔지만 더 많은 것이 필요합니다. 이것들은 당신이 원하는 많은 언어에 대한 번역을 정의 할 수있게 해줍니다. 일반적으로 국제화에서는 영어 또는 스페인어 (또는 사용하려는 다른 언어)로 번역 될 _keys_ 만 저장해야합니다. – vlaz

+0

이 질문을 확인하십시오 : http://stackoverflow.com/questions/4886319/replace-text-in-html-page-with-jquery – MrMisery

답변

1

번역하려는 단어가 2 종류 인 경우 - 번역 라이브러리가 과도 할 수도 있습니다.

내가

lang = { 
    es : { 
     readmore : 'Read More In Spanish', 
     date  : 'Date in spanish' 
    }, 
    en : { 
     readmore : 'Read More', 
     date  : 'Date'    
    } 
} 

var languageCode = $('html').attr('lang'); 

console.log(lang[languageCode].readmore) 
console.log(lang[languageCode].date) 
+0

깨끗하고 간단 해요, 나는 그걸 좋아해요. – TitusQuinn

관련 문제