2016-04-01 7 views

答えて

1

これはD3の選択がどのように働くか理解にダウンしています。あなたが選択を扱い、消費する関数を提供するときはいつでも、標準的なパラメータセットを持っています。このすべてがdocumentationで提供されています:

  • dインデックスパラメータがあり、その要素
  • iにバインドされたデータを表しデータムパラメータであり、これはあなたが後にしているビットです!

thisは、あなたが扱っているDOM要素を表します。

ですから、例えば次のようになります。

d3.selectAll("li") 
    .each(function(d, i) { 
     console.log("This <li> tag " + i); 
    }); 
+0

ありがとうございました。インデックスを取得した後、d3.select(ul).properties( "ScrollTo"、index)を使用してscrollerを移動することが可能です –

+0

@LoredraLこれは別の質問です。しかし、 'this'は実際の要素であるので、スクロールしたい要素を知っていれば、この答えに示されているような関数に' this'を渡すことができますhttp://stackoverflow.com/質問/ 4801655 /特定の要素をページ上に移動する方法。重要なのは '$(this).offset()。top + 'px''です。 – Ian

1

と同じことを達成するために周りに取得することはできません。

d3.selectAll('li') 
    .attr('color',function(d,i){ 
     console.log(this,i); 
    }) 

私は、コンソールであなたがインデックスを見ることができる謎を作りました。

http://jsfiddle.net/a2QpA/294/

関連する問題