この(壊れた)最小限の例では、テキストをフェードアウトし、非表示にして変更し、変更された内容で再表示します。これは単純(クロスフェードなし)でなければならないが、エラーメッセージは.html
が機能ではないと訴えている。 D3:遷移中にhtmlを変更する
<!DOCTYPE html>
<title>Image mask</title>
<script type="text/javascript"
src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.17/d3.min.js">
</script>
<body>
</body>
<script>
var textbox = d3.select('body').append('div');
textbox
\t .html('Click me.')
\t .style('cursor','pointer');
var i = 0;
textbox.on('click', function() {
\t i++;
\t textbox.transition()
\t \t .style('opacity', 0)
\t .transition().duration(300)
\t .html('Click me. <strong>' + i + '</strong>')
\t .transition().transition()
\t \t .style('opacity', 1);
});
</script>
PS私はcross-fadingのための例を見つけましたが、(私はクロスフェードをしたくないので)それは複雑、不必要なようで、バージョン4の.active
方法が必要です。 .html
が.text
に置き換えられていると "うまくいきますが、実際には内容を解析する必要があります。
そして.htmlのは、移行のための機能ではありません。 .text – Klaujesi
に変更するjQuery.animate()を使用するのは簡単ではありませんか?両方(D3とjQuery)は問題なく共存できます。 – Klaujesi