0

英語の単語とペルシャ語の単語を含む HTML ページがあります。英語の単語を検出してその色を変更する方法と、ペルシア語の単語を検出してその色を別の色に変更する方法を知りたいです。

これらの単語は動的であり、変更できます。jQueryやJavaScriptで検出して色を変えたいです。

たとえば、次のテキストがあるとします。

Hi سلام بر this این text can be برای اولین ...

これらの単語を赤で表示したい:

Hi, This, Text, can, be, 

そしてこれらの単語は青で:

بر, سلام, این, برای, اولین 
4

2 に答える 2

8

char コードの使用についてはどうですか。

英語の文字は最初の 255 文字以内ですが、ペルシア語の文字はそうではありません。

html

<p>Hi سلام بر this این text can be برای اولین.</p>

JavaScript

jQuery(function($) {
  $("p").each(function(){
        this.innerHTML = $(this).text().replace(/\S+/g, function (word) {
            var span = document.createElement("span");
            span.className = "word ";
            span.className += isEnglish(word) ? 'english' : '';
            span.className += isPersian(word) ? 'persian' : '';
            span.appendChild(document.createTextNode(word));
            return span.outerHTML;
        });
    });

    function isEnglish(word){
      return word.charCodeAt(0) < 255;
    }

    function isPersian(word){
      return word.charCodeAt(0) > 255;
    }
});

jsFiddle

于 2013-07-08T12:39:19.443 に答える