特定のリンクセットがクリックされたときに、関数を呼び出すためにdelegateを使用しようとしています。 私はもう前に他のページで使っていました。それはそこで働いた。しかし、今回は、問題がどこにあるのかわからなくても。jQueryデリゲートが機能していませんか?
私のリンクが動的に生成された、彼らは
<a class="thumbLink" href="#" id="My HomeTown-1"><small>My HomeTown</small></a>
のように見えるとjQueryデリゲート機能があり、
$(document).ready(function(){
$("#albumHolder").delegate('a.thumbLink', 'click', this.loadAlbum);//albumHolder is div ID that holds all the <a> elements
this.loadAlbum = function(){
var id = this.id;
var number = id.lastIndexOf("-");
var alubmName = id.subString(0, number);
alert(albumName);
}
});
を更新:
私は両方のバージョンを試してみましたが、私は思いますそれを動作させることができません!
$("#albumHolder").delegate('a.thumbLink', 'click', function loadAlbum(){
var id = this.id;
var number = id.lastIndexOf("-");
var alubmName = id.subString(0, number);
alert(albumName);
});
this.loadAlbum(){
var id = this.id;
var number = id.lastIndexOf("-");
var alubmName = id.subString(0, number);
alert(albumName);
}
$("#albumHolder").delegate('a.thumbLink', 'click', this.loadAlbum);
上記コードは$(document).ready(function(){});
です。あれは正しいですか?? また別のjs
ファイルに入れてみました。私はそれを働かせることはできません。
私の問題について考えてみましょう!
#@ patrick dw:動作しません。私も '.live()'を使うのに疲れました。そのも動作しません。それはあなたに何か意味がありますか?とにかく私は 'try'の結果で私の質問を更新しました。 –
@CS 1.6 - '#albumHolder'要素も動的に作成されていますか?また、このプロジェクトで古いバージョンのjQueryを使用している可能性はありますか? – user113716
#@ patrick dw:はい! –