Var divs = $(".txt");
これにより、 txtdivs
付きのリストが返されます。class
たとえば、選択したdivにテキストを追加したいのですが、
これは関数ではないというdivs[4].html("Hello World");
エラーが返されます。divs[4].html
なぜ ?
3 に答える
3
DOM配列インデックスを使用してjQueryオブジェクトにアクセスすると、関数を持たないjQueryオブジェクトではなくHTML要素を取得しますhtml()
。代わりにeq(n)
セレクターを使用してください。
$(".txt:eq(4)").html("Hello World");
于 2012-08-19T23:08:22.560 に答える
2
は、jQueryオブジェクトではなくdivs[0]
、DOM参照を提供します。したがって、それをjQuery関数(の省略形)に渡します。$()
jQuery()
$(document).ready(function(){
var divs = $('.txt');
$(divs[4]).html('this one');
});
http://jsfiddle.net/userdude/unu8g/
$(document).ready()
DOMにアクセスできるようになるまで待機するの使用にも注意してください。$(window).load()
後に発砲する可能性がありますが、これにも十分ですonDOMReady
。
于 2012-08-19T23:14:03.100 に答える
0
jQuery以外の方法:
document.getElementsByClassName("txt")[4].innerHTML = "banananana!";
補足:ライブラリに移動する前に、基本的なブラウザのJavaScriptを学ぶことをお勧めします。これにより、そのようなライブラリがどのように機能するかを理解でき、特定の少数のライブラリに「ロックイン」されるのを防ぐことができます。
于 2012-08-19T23:16:01.110 に答える