2
下面的代碼創建一個圓,並使其可拖動後:元素不再拖動添加參數D3拖動行爲
HTML:
<svg width='400' height='400'>
<rect width='100%' height='100%'></rect>
<circle transform='translate(259.5,197)' r='10'></circle>
</svg>
JS:
var drag = d3.behavior.drag().on('drag', dragMove)
d3.select('svg').append('circle').attr('transform', 'translate(' + '100px' + ',' + '100px' + ')').attr('r', '5').call(drag)
function dragMove(test) {
var x = d3.event.x
var y = d3.event.y
console.log(test)
d3.select(this).attr('transform', 'translate(' + '200px' + ',' + '200px' + ')')
}
它的工作原理。但是,當我加一個參數dragMove
:
'drag', function() { dragMove('test') }
拖拽功能停止工作(console.log(test)
輸出'test'
,雖然)
爲什麼會出現這種情況,如何解決?
https://jsfiddle.net/alexcheninfo/d8doyc9r/4/
謝謝,它的工作!一個問題,爲什麼函數(d)中的'd'必需?我刪除了它,沒有發生任何事。 – alexchenco
哈哈哈我的錯誤請刪除它.. :) – Cyril
我總是看到在d3示例代碼中'd'。我認爲有人犯了這個錯誤,然後人們把它包括在內,因爲慣例,哈。 – alexchenco