1

<i>のすべてのインスタンスがに変更されるjquery セットアップを作成しようとしています<em>。それを行うのは簡単です:

$("i").each(function(){
    $(this).replaceWith($('<em>' + this.innerHTML + '</em>'));
});

しかし、私が理解するのに苦労しているのは、すべての<i>タグを変更するが、それぞれの個々の属性を保持する方法です。だから私が持っているなら、私は<i style="background-color: #333;" alt="Example" title="Example">Example Text</i>それをに変更したいと思います<em style="background-color: #333;" alt="Example" title="Example">Example Text</em>

助けてくれてありがとう!

4

2 に答える 2

2

間違ったアプローチ IMO。

実際の要素自体を DOM で直接置き換えることをお勧めします。たぶん、この質問が役立ちます:

jQueryはDOM要素を別の型に変換します

于 2010-05-21T20:12:56.477 に答える
0

簡単です

$(this).attributes(); すべてのインスタンスのiタグのすべての属性を取得し、replace関数に配置するだけです。

関数をどのように操作できるかはわかりませんが、私の知識では、コードは次のようになります。

$("i").each(function(){
var attribute = $(this).attributes();
$(this).replaceWith($('<em'+attributes+'>'

+ this.innerHTML +'')); });

それが役に立てば幸い。

于 2010-05-21T20:21:24.767 に答える