2012-05-05 23 views
0

你可以看到這裏的問題:http://jsfiddle.net/qQ6ws/36/jQuery的:追加克隆原因元素被左右(即只)

我使用換擋切換是通過打電話給我的克隆功能「啓動」回撥的可拖動的項目。

我有一個問題,事件處理程序沒有被激活,除非我第一次點擊內容框架(右下角),然後點擊一個字母鍵。 (Lclick + D鍵)爲例。

一旦事件處理程序處於活動狀態,只需在測試框上單擊並拖動即可克隆它。這在Firefox中很好用。

Internet Explorer 9 & 10雖然都有問題。每次將測試框附加到文檔時,測試框都會發生偏移,並且整個事情會變得混亂。

我試過各種東西,但無法弄清楚解決這個問題。任何幫助將非常感激。

回答

1

簡化顯著,我得到:

var dragOptopns = { 
    start: function(e, ui) { 
     if (e.shiftKey) { 
      $(this).clone().prependTo('body').draggable(dragOptopns); 
     } 
    } 
}; 

$(".myClass").draggable(dragOptopns); 

click-drag拖動或shift-click-drag留下克隆後面。

見在Opera 11.62和IE9 fork of fiddle

工作正常。

+0

哇,有這麼多我不知道有可能擠進這麼小的空間。非常感謝! –

+0

是的,8行純粹的滿意度,但令人驚訝的是它知道如何工作,儘管我的「選項」拼寫錯誤!至少我是一致的。 –

+0

這裏有一個有趣的版本 - http://jsfiddle.net/bnpNP/1/。 –