2011-02-15 76 views
3

我需要實時獲得一個div的位置,我想以下幾點:如何獲得一個元素的位置實時

html div 
    id: 'square'; 
    script: (html jQuery new draggable 
    onStop: (html jQuery ajax 
     callback: [Transcript show: html jQuery this position])). 

遺憾的是它不工作,談話節目:'一個JQueryInstance($(this).position())'

什麼是正確的方法來做到這一點?

+0

你想要建立什麼? ^^ – 2011-02-15 18:39:16

+0

我試圖讓一些對象是互動和可拖動的,我想我要檢查幾種不同的方法。第一個是JQuery,但如果JQuery感覺不夠自然,我也可以試試SVG。 – 2011-02-16 10:03:39

回答

2

試試這個:

html div 
    id: 'square'; 
    script: (html jQuery this draggable 
    onDrag: ((html jQuery script: 
    [:builder | builder << (builder jQuery get          
     callback: [ :value | Transcript show: (value at: 'top')@(value at: 'left')] 
     json: (builder jQuery this position)). 
    ]) asFunction: #(event ui) 

在代碼中,HTML jQuery的這個位置將評估一個腳本文本,因爲它沒有寫入文件,永遠不會給客戶端。相反,只要回調被觸發,它就會被寫入抄本。爲了讓腳本到達客戶端,使用回調:json:方法,該方法執行腳本作爲參數傳遞給json :,使用ajax將結果傳回Seaside,然後使用提交的值觸發回調。