D3之drag

一.drag中的參數(shù)說明

var  drag = d3.hehavior .drag()
              .origin()
              .on()

首先国拇,我們一定要認(rèn)為這是個(gè)生成器莽鸿,也就是說d3為我們提供了一個(gè)這樣的拖拽框架,讓我們定義一系列拖拽的規(guī)則印颤,通過傳入不同的值會(huì)相應(yīng)的返回一些值供我們所用请祖。切記:在d3中每一個(gè)生成器的屬性都不可在其調(diào)用時(shí)改變订歪。其中, origin代表拖拽的原點(diǎn)(每次拖拽的原點(diǎn)而非第一次** 這個(gè)很重要 **)肆捕。on代表一個(gè)事件刷晋,用法見例子。

二慎陵、on

可有dragstart眼虱、drag、dragend可選席纽。顧名思義捏悬,dragstart在拖拽之前發(fā)生,drag是拖拽的過程中發(fā)生润梯,dragend在拖拽之后發(fā)生过牙。

三甥厦、例子

var width = 600;
var height = 600;
var svg = d3.select(this.el).append('svg')
            .attr({
                    width:width
                   ,height:height
            })
var drag = d3.behavior.drag()
             .origin(function(){return {x:10,y:10}})
             .on('drag',function(d){
                         d3.select(this)
                           .attr({
                                'x':Math.max(0,Math.min(width-50,d3.event.x))
                                  ,'y':Math.max(0,Math.min(height-50,d3.event.y))
                              })
              })
var rect = svg.append('rect')
              .attr({
                     'width':50
                    ,'height':50
               })
              .style({
                    'cursor':'move'
              })
             .call(drag)

在這個(gè)例子中,我只展示了drag的用法寇钉,但是在實(shí)際用的過程中矫渔,大家也許會(huì)給多個(gè)rect定義drag操作。那么一定要注意origin中一定要寫為這樣或者不定義(推薦不定義):

.origin(function(d,i){return d})

為什么要這樣摧莽,我再啰嗦下庙洼,是因?yàn)椋琩rag對(duì)我們是生成器镊辕,每一個(gè)d都會(huì)在drag中做一些系列處理油够。如果定義一個(gè)固定的值,那么當(dāng)?shù)谝粋€(gè)拖拽之后會(huì)影響其他征懈。
但其實(shí)在真實(shí)開發(fā)中石咬,如果設(shè)置的了origin會(huì)給我們帶來麻煩,大家可以修改例子卖哎,注意觀察鬼悠。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市亏娜,隨后出現(xiàn)的幾起案子焕窝,更是在濱河造成了極大的恐慌,老刑警劉巖维贺,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件它掂,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡溯泣,警方通過查閱死者的電腦和手機(jī)虐秋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來垃沦,“玉大人客给,你說我怎么就攤上這事≈荆” “怎么了靶剑?”我有些...
    開封第一講書人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)译仗。 經(jīng)常有香客問我抬虽,道長(zhǎng)官觅,這世上最難降的妖魔是什么纵菌? 我笑而不...
    開封第一講書人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮休涤,結(jié)果婚禮上咱圆,老公的妹妹穿的比我還像新娘笛辟。我一直安慰自己,他們只是感情好序苏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開白布手幢。 她就那樣靜靜地躺著,像睡著了一般忱详。 火紅的嫁衣襯著肌膚如雪围来。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,462評(píng)論 1 302
  • 那天匈睁,我揣著相機(jī)與錄音监透,去河邊找鬼。 笑死航唆,一個(gè)胖子當(dāng)著我的面吹牛胀蛮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播糯钙,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼粪狼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了任岸?” 一聲冷哼從身側(cè)響起再榄,我...
    開封第一講書人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎享潜,沒想到半個(gè)月后不跟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡米碰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年窝革,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吕座。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡虐译,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吴趴,到底是詐尸還是另有隱情漆诽,我是刑警寧澤,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布锣枝,位于F島的核電站厢拭,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏撇叁。R本人自食惡果不足惜供鸠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望陨闹。 院中可真熱鬧楞捂,春花似錦薄坏、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至繁堡,卻和暖如春沈善,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背椭蹄。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來泰國打工矮瘟, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人塑娇。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓澈侠,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親埋酬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子哨啃,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)写妥,斷路器拳球,智...
    卡卡羅2017閱讀 134,656評(píng)論 18 139
  • 翻譯自“Auto Layout Guide”。 1 入門 1.1 理解自動(dòng)布局 自動(dòng)布局根據(jù)視圖層級(jí)結(jié)構(gòu)中視圖上的...
    lakerszhy閱讀 3,584評(píng)論 3 26
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,116評(píng)論 25 707
  • 秋風(fēng)肅殺珍特。 尚是初秋祝峻,天氣已十分冷峭了。晨起出發(fā)扎筒,只得緊緊裹住外衣莱找。 開學(xué)已有數(shù)日。這幾日里嗜桌,渾渾噩噩奥溺,不知所云。...
    萬物成灰閱讀 225評(píng)論 0 1
  • 12日凌晨骨宠,待米菲洗漱的間隙浮定,我獨(dú)自一人走出房間,帶上相機(jī)层亿,想著探店的旅程馬上結(jié)束桦卒,心里有些不舍。 我墊著腳尖匿又,走...
    苗苗在故鄉(xiāng)閱讀 224評(píng)論 0 0