あなたはどのクラスを別のクラスに変更したいのかをあまり詳しく説明していないので、そのクラスが何であるか正確にわからない場合に対処したいと言いました。 :
あなたがこのセレクタで「indent_」で始まるクラスを持つすべてのオブジェクトを見つけることができます:あなたは、これらのオブジェクトのそれぞれのクラスを検討したい場合
$('[className^="indent_"]')
、あなたがいることを反復処理でき.each()
でjQueryオブジェクトを作成し、各オブジェクトで何をすべきかを決めるか、カスタム関数とexamiでremoveClass()を使うことができますクラス名を決めて、それをどうするか決めてください。
$('[className^="indent_"]').removeClass(function(index, name) {
var match = name.match(/\bindent_\d+\b/);
if (match) {
return(match[0]);
} else {
return("");
}
}).addClass("indent_2");
:正規表現を使用してクラス名を調べることができますカスタム関数を使用して、
$('[className^="indent_"]').removeClass("indent_1 indent_3 indent_4").addClass("indent_2");
のか:あなただけindent_2するすべてのインデントのクラス名を変更したい場合は
、その後、あなたはこれを使用することができます
それとも、あなたがしたいすべてがID =「タイトル」を持つオブジェクトを検索し、それのクラス名を修正している場合、あなたはこのようにそれを行うことができます。
var o = document.getElementById("title_1");
o.className = o.className.replace(/\bindent_\d+\b/, "indent_2");
あなたがここに、この最後の作品見ることができます:あなたは異なる番号を取ることができる関数にこれをしようとしている場合は、この使用することができhttp://jsfiddle.net/jfriend00/tF8Lw/
を:
function changeIndentClass(id, indentNum) {
var item = document.getElementById(id);
item.className = item.className(/\bindent_\d+\b/, "indent_" + indentNum);
}
あなたが変わるの名前とはどういう意味ですか? –
"indent_"の後の数字は0,1,2,3のいずれでもかまいません。 –
同じIDのページに2つの要素がある場合は、IDで選択する際に問題に遭遇します。一部のブラウザはまったく動作しませんが、他のブラウザは一致する最初の要素だけを返すことがあります。 – kasdega