我會在這裏把這個留給薰陶,但我的朋友告訴我,他們會否認我,如果我濫用這樣一個cookie。所以我改變了我的執行方式,不能失去任何朋友。他們告訴我要專注於快速轉向ajax呼叫。我仍然需要知道對象何時完成了渲染,因此我只是在部分中添加了隱藏元素,並將其大小設置爲零,並等待直到部分渲染將高度從零更改爲止。雖然我打算使用會話ID避免串擾,但看到與網頁打開的兩個選項卡的交互很有趣。
好吧,我決定,爲了我的目的,最好的方法是將數據放入cookie中,並檢測cookie何時更改。這使我可以在send_data命令結尾處更改cookie,並獲取圖像位置相對於其他圖像的數據,以及檢測send_data何時完成,以便我可以將圖像滑動到位(通過動畫等待圖像)。
它看起來像這樣的服務器
send_data(image.to_blob { self.format = 'png' },
type: 'image/png',
disposition: 'inline')
cookies[:duck_data] = { :value => $cookie_data.to_json}
上,這在客戶端
wait_for_paint=->
if $.cookie('duck_data') == 'keep waiting'
setTimeout (->wait_for_paint()), 250
else
my_data= $.parseJSON($.cookie('duck_data'))
do_ajax_response(my_data)
好吧,我試圖 $( 「#magic_box」)HTML('<%= escape_javascript (渲染部分:「magicacts/magic_box」)%>'); areply = <%= escape_javascript(@ my_params.to_json)%>; – bobbdelsol
做些簡單的事情,我加了areply = 3;我得到了一個成功的迴應,並在響應中查看數據,但無法引用它。 – bobbdelsol