2010-06-19 63 views
1

我想這樣做:拖放跨框架與jQuery UI

  • 將從包含一個IFRAME

  • 掉落此DIV元素插入到第二第一文檔DIV元素文檔,在IFRAME中。

有沒有辦法使用jQuery UI可拖拽& droppable來實現這個?或以其他方式以跨瀏覽器的方式執行此操作,可能還需要另一個JS庫?

$('your-iframe').contents().find('elements-to-find').droppable(); 

爲了確保iframe的內容被加載時運行腳本,你必須等待jQuery的負載事件:

+0

此功能將在HTML5中可用:http://www.w3.org/TR/html5/comms.html(請參閱:跨文檔消息傳遞)有一些使用javascript和canvas的示例(http:// www.chromeexperiments.com/detail/browser-ball/),但如果您在HTML5標準化之前強制執行HTML5支持,則會限制用戶。 – 2010-06-19 14:12:42

+0

@JimSchubert爲什麼同一個Web應用程序的兩個不同的iframe會成爲不同的域? – NoBugs 2016-03-10 07:17:21

+0

@NoBugs我不是100%確定,但我似乎記得,如果您的iframe正在加載來自不同域的資產,那麼存在安全限制。我已經看到使用localStorage來克服iframe的安全限制,但還沒有實現類似的東西。我傾向於避免iframe。 – 2016-03-10 15:56:23

回答

1

您可以輕鬆地訪問內容的iframe中使用jQuery這樣做的iframe。

$('your-iframe').load(function() { 

    $('your-iframe').contents().find('elements-to-find').droppable(); 

}); 

我有你同樣的必要性和管理做拖動和iframe中之間的下降就這樣了,一切運行正常。