-3

1文字を除いてうまく機能するフォントがあります。0幸い、Oこれは完全な置換であるため、すべてのゼロを削除して大文字のOに置き換える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たのですが、なかなかうまくいきません。

フォントを保持する必要がある場合、この特定の問題をどのように解決できますか?

ありがとう!

4

3 に答える 3

3

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

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

于 2012-05-02T11:29:47.093 に答える
1

これはうまくいくでしょうが、それがどれほどパフォーマンスが良いかはわかりません。

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

})​

http://jsfiddle.net/nPfDC/

于 2012-05-02T11:33:12.980 に答える
-1

Crockfordをチャネリングすると、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/

于 2012-05-02T11:51:56.260 に答える