0

なぜこれが機能しないのですか?

<script type="text/javascript" src="js/jquery-1.8.1.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
            $("body").html($("body").html().replace(/&reg;/g, '<sup>&reg;</sup>').replace(/®/g, '<sup>&reg;</sup>').replace("\u00AE" , '<sup>&reg;</sup>'));
        };
    );
</script>

Firefox の Firebug は、コンソールに次のように表示します: "SyntaxError: missing ) after argument list"

しかし、これはWordpressを完全に壊します...

<script type="text/javascript">
    $(document).ready(function() {
            $("body").html($("body").html().replace(/&reg;/g, '<sup>&reg;</sup>').replace(/®/g, '<sup>&reg;</sup>').replace("\u00AE" , '<sup>&reg;</sup>'));
        }
    );
</script>

この関数の基本は、ボディ内のすべてのレジストレーション マークを検索し、「®」に置き換えることです。この関数が PHP でも機能する場合は、それが望ましいです。

4

1 に答える 1

3

データベースにアクセスし、SQL クエリを実行してすべてのレジストレーション マークを置き換え、"" タグでラップするのが最善の方法のように思えました。

ただし、これは個々の要素で機能しました。(アデネオが言ったように、サイトのHTML全体を置き換えるのは良い考えではありません...それは私にとってサイトを壊しました)

<script type="text/javascript"  src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"> </script>
<script type="text/javascript">
    $(document).ready(function() {
        $("h1").html(
            $("h1").html()
                .replace("®", "<sup>&reg;</sup>")
                .replace(/&reg;/g, '<sup>&reg;</sup>')
                .replace(/®/g, '<sup>&reg;</sup>')
                .replace("\u00AE" , '<sup>&reg;</sup>')
        ); 
    });
</script>
于 2012-12-10T23:15:24.030 に答える