2011-12-19 19 views
0

我想拖動一個包含使用google可視化JavaScript庫創建的量表小部件的div。該庫在位於表格內的iframe內創建一個svg。jQuery draggable - 拖動包含iframe和svg的div

我有一個div包裝整個事情,我想能夠拖動它。 問題是,似乎iframe捕獲鼠標點擊,他們從來沒有泡到div,因此拖動不會觸發。有誰知道我如何手動觸發可拖動的事件?我嘗試用'mousedown'觸發它,但這不起作用。

其他人有這個問題嗎?

謝謝。

回答

0

有幾件事情浮現在腦海中:

1)如果你的DIV崩潰(使用螢火看到計算的高度/寬度),它有時與浮動元素髮生了,那麼你的「可拖動區域」可能在事實上不存在。即使父母崩潰,子元素也可以顯示出來。嘗試爲父容器設置明確的高度/寬度。

2)也許是因爲你使用的特殊子元素。在這種情況下,可能的解決方法是:創建一個具有相同父/母高度/寬度的子div,並將其定位設置爲絕對位置,並創建一個較大的z-索引以將其置於頂端。這基本上在整個容器的頂部放置一個「層」。我不確定如何使用.draggable()函數將新的頂層圖層用作可拖動區域,因爲您還想要拖動整個父層。如果您將.draggable()添加到這個新圖層,它將只是單獨拖動該圖層。

一個簡單的解決方案:爲該窗口創建一個「標題欄」,並將CSS遊標屬性設置爲該可移動圖標(不確定語法)。然後你的用戶知道抓住標題欄拖動它。

不知道這是否有幫助...

+0

嗨邁克,感謝您的迴應。該div不會崩潰,但似乎iframe捕獲鼠標點擊,他們從不冒泡到div,因此拖動不會觸發。 有誰知道我該如何手動觸發可拖動的事件?我嘗試用'mousedown'觸發它,但這不起作用。 – Yaron 2011-12-20 14:51:57