2015-06-02 3 views
0

Я изучаю d3.js. В приведенном ниже сценарии, selection.transition(), кажется, не работает когда selection.property() прикован, хотя он работает, когда selection.property() ставится в перехода() .each(). Я делаю что-то неправильно? Или это спецификации переход()?d3.js переход не работает с методом свойства

<input class="property_transition" type="checkbox">Property Transition Test</input><br> 
<input class="property_transition" type="checkbox">Property Transition Test</input><br> 
<input class="property_transition" type="checkbox">Property Transition Test</input><br> 
<input class="property_transition" type="checkbox">Property Transition Test</input><br> 

<script src="http://d3js.org/d3.v3.min.js"></script> 
<script> 
    var elements = d3.selectAll(".property_transition"); 
    elements 
     .transition()//.delay(function(d,i) { return i/elements.length *50; }) 
      .property("checked", true); // <== This is NOT working. 
      //.each("end", function() { d3.select(this).property("checked",true); }); // <== This works!!! 
</script> 

С помощью этого скрипта, Chrome браузер дает:

Uncaught TypeError: elements.transition(...).property is not a function

IE11 дает:

Object doesn't support property or method 'property'

Спасибо,

+0

На самом деле не имеет смысла переводить двоичное значение. Вы должны просто установить его. –

+0

Я согласен с тобой. Это для визуальных эффектов для проверки нескольких флажков сверху вниз. Мне нравятся такие эффекты и, извините, но этот вопрос в основном связан с моим любопытством о том, как работает d3 :) – vjou

+0

Ну '.property()' не то, что вы можете переходить в D3, так что это короткий ответ :) –

ответ

0

Короткий ответ, что .property() не то, что вы может перейти в D3, в частности, он не обеспечивает соответствующую функциональность n (как указывает сообщение об ошибке в Chrome).

В общем, на самом деле не имеет смысла переводить двоичное свойство - какими будут промежуточные значения?

Смежные вопросы