2012-05-02 7 views
-3

私は1文字以外はすごくうまく動作するフォントを持っています:0幸いにもOは完全な置換えなので、すべてのゼロを削除して大文字のOs :私はそれでゼロとページ上のリンクを持つまでJQuery:可視文字を置換する

$("body").html($("body").html().replace(/0/g,'O')); 

これは、例えば、素晴らしい作品:

<a href="http://92.21.52.108:9000">Our server</a> 

これは、に変更されます

<a href="http://92.21.52.1O8:9OOO">Our server</a> 

代わりに$("body").textを使ってみると思いましたが、それは完全に機能しません。

私はフォントを保持する必要があるので、この特定の問題を解決するにはどうすればよいですか?

ありがとうございます!

答えて

3

これを行うためにJQueryを使用することは非常に悪い考えです。

改善された「0」のフォントを更新するか、別のフォントを使用してください。

+0

なぜそれが5月、非常に悪い考えです私は尋ねる?その奇妙な点を除いて、今は完璧に動作しているようです。ありがとう。 –

+2

根本的な問題であるフォントを修正するより良い方法があるので。また、あなたのウェブサイトを見ているすべてのクライアントのマシン上のすべての「無駄な」CPUサイクルを考えるのは嫌です。真剣にでも、これに取り組むのは正しい方法ではありません。 – psynnott

+0

フォントエディタの推奨事項はありますか? :) –

1

これはうまくいくが、どのようにパフォーマンスが良いか分からない。クロックフォードをチャネリング

​$(function() { 
    $('body *') 
     .contents() 
     .filter(function() { 
      return(this.nodeType === 3) 
     }) 
     .each(function() { 
      $(this).replaceWith($(this).text().replace(/0/g, 'O')) 
     }) 

})​ 

http://jsfiddle.net/nPfDC/

+0

試してくれてありがとうございますが、それはまったく動作しません。 –

+0

おそらく私はそれをjsfiddleから間違ってコピーしました。もう一度やり直してください – HerrSerker

+0

問題はそれがCSSにも置き換わるということです:http://jsfiddle.net/d44MF/どうもありがとうと思いますが、フォントを修正しようとしています。 –

-1

、あなたはずっとこのように非jqueryの歩行器を使用することができます。ここ

var walk_the_DOM = function walk(node, func) { 
    func(node); 
    node = node.firstChild; 
    while (node) { 
     walk(node, func); 
     node = node.nextSibling; 
    } 
}; 

walk_the_DOM(document.body, function(node) { 
    if(node.nodeType == 3) { 
     node.data = node.data.replace(/0/g,'O') 
    } 
});​ 

デモ:http://jsfiddle.net/b7PtN/

関連する問題