2012-03-12 5 views

답변

0

현재 입력 언어를 결정하는 나에게 도움이 가로 질러 온 체제 및 브라우저 아무것도하지만, 내가 찾은의 기본 언어를 결정

모든 솔루션을 입력하는 언어가 무엇 알 필요가 입력 키를 보내고 'a'라고 말하고 유니 코드/아스키 값을 읽습니다. 그 97 영어가 아니라면. 이 질문에 체크 아웃 :

Get the current keyboard layout language in JavaScript

+0

같은 해결책이 작동하지 않지만 뭔가 알아낼 수 있도록 결정해야했습니다. 그것에 대해 더 많이 알고 있지만 해결을 고려하기 전에 내가 여기에있는 것을 게시 할 것입니다 –

0

당신이있어 Google's AJAX Language API

var content = "your text"; 
google.language.detect(content, function(result) { 
    if (!result.error) { 
    var language = 'unknown'; 
    for (lang in google.language.Languages) { 
     if (google.language.Languages[lang] == result.language) { 
     language = lang; 
     break; 
     } 
    } 
    // Now use the variable `language` 
    } 
}); 
+0

내 문제를 해결해 주셔서 고마워요.하지만이 솔루션을 시도하고 많은 시간이 걸리고 jquery를 사용하면 첫 번째 시간을 절약하는 것이 었습니다. 게다가, 나는 항상 두 언어 모두에 대해 동일한 값을 반환한다고 생각한다. –

+0

@MahaKhairy, 그게 용납할만한 것이 아니다. 읽기에 충분한 문자가 있고 모두 UTF8 인코딩 인 경우 거의 올바른 언어를 반환합니다. 하지만 그것은 항상 100 % – Starx

+0

귀하의 의견을 주셔서 감사합니다 나는이 구글 API에 대해 많이 몰랐어, 아마도 충분한 문자 조건이 적용되지 않았지만 내 응용 프로그램은 심지어 숯불과 함께 작동해야합니다 어쨌든 호출은 많은 시간이 걸립니다 각 키 누르기로 해당 유효성 검사를 적용해야합니다. –

1

확인을 사용하여이 작업을 수행 할 수있는 것은 나를 위해 일한 솔루션입니다. 주 내 응용 프로그램에서 내가 확실히 알고있는 입력 언어가이 개 언어 입력 중의 하나가 될 것입니다 내가 만약 내가 필요한 것입니다 그 이전의 예에서

  var msgText = entered message text; 
      var textLength = msgText.length; // entered message length 
      var isEnglish = true; 
      for (var index = 0; index <= textLength; index = index + 1) { 

       if (msgText.charCodeAt(index) > 160) { 
        //Not English 
        isEnglish=false; 
        break; 
       } 
      } 

무엇을했는지, 그래서 여기에 영어 또는 아랍어 입니다 단일 문자는 아랍어로 전체 텍스트는 아랍어로 유효성을 검사해야하므로 기본적으로 변수 isEnglish = true가 추가되었으며 문자열의 문자가 영어가 아닌 경우에만 변경됩니다 charCodeAt (index)를 사용하여 문자열의 문자를 반복했습니다. ISO 라틴 -1 문자 번호를 반환합니다. this 페이지의 표를 사용하여 영어 문자를 나타내는이 집합의 최대 숫자가 160이고

관련 문제