私はあなたが欲しいものはこれだと思います:
var d;
if (c("body").find("#lightbox-buttons").length < 1) {
this.list = c(a.template || this.template).addClass(a.position || "top").prependTo(g.utility.find("> div"));
d = {
prev: this.list.find(".btnPrev").click(g.prev),
next: this.list.find(".btnNext").click(g.next),
play_fast: this.list.find(".btnFast").click(g.play_fast).addClass(g.player_fast.isActive ? "btnPlayOn" : "")
};
//this assumes that the buttons you need to remove the class from all have the same class, in this example 'btnToRemoveClassFrom'
this.list.find('.btnToRemoveClassFrom').removeClass('classToRemove');
}
または、クラスを削除する必要のあるボタンがリストにない場合、最後の行は単純に次のようになります。
c('.btnToRemoveClassFrom').removeClass('classToRemove');
btnPlayOn
コメントで説明されているように、最初にクラスの存在を確認するには、次を使用します。
if (this.list.find('.btnPlayOn').length > 0) {
c('.btnToRemoveClassFrom').removeClass('classToRemove');
}
ところで、なぜ地球上c
でjQueryの省略変数として使用されているのですか?それ以外の何かを作ることが理にかなっている状況はたくさんあります$
が、少なくともピック$j
またはリモートで理にかなっているものを選びます。
編集:このバージョンはもう少し読みやすいと思います:
var d;
if (c("body").find("#lightbox-buttons").length < 1) {
this.list = c(a.template || this.template).addClass(a.position || "top").prependTo(g.utility.find("> div"));
var btnFast = this.list.find(".btnFast");
d = {
prev: this.list.find(".btnPrev").click(g.prev),
next: this.list.find(".btnNext").click(g.next),
play_fast: btnFast.click(g.play_fast)
};
btnFast.addClass(g.player_fast.isActive ? "btnPlayOn" : "");
//this assumes that the buttons you need to remove the class from all have the same class, in this example 'btnToRemoveClassFrom'
if (this.list.find('.btnPlayOn').length > 0) {
this.list.find('.btnToRemoveClassFrom').removeClass('classToRemove');
}
}