2010-06-19 3 views
1

comme le faire:glisser-déposer sur les cadres avec je ne jQuery UI

  • Faites glisser un élément DIV à partir d'un premier document qui contient un IFRAME

  • déposer cet élément DIV en en une seconde document, à l'intérieur de l'IFRAME.

Est-il possible d'utiliser l'interface utilisateur jQuery draggable & largable pour y parvenir? ou le faire de manière croisée, éventuellement avec une autre bibliothèque JS?

+0

La fonctionnalité de cette fonctionnalité sera disponible en HTML5: http://www.w3.org/TR/html5/comms.html (voir: Messagerie inter-documents) Il existe des exemples d'utilisation de javascript et de canvas (http: // www.chromeexperiments.com/detail/browser-ball/), mais vous limiterez les utilisateurs si vous appliquez la prise en charge HTML5 avant la normalisation de HTML5. –

+0

@JimSchubert Pourquoi deux iframes différentes de la même application web seraient-elles des domaines différents? – NoBugs

+0

@NoBugs Je ne suis pas sûr à 100%, mais je crois me rappeler qu'il existe des limitations de sécurité si vos iframes chargent des assets de différents domaines. J'ai vu des hacks d'utiliser localStorage pour surmonter les limitations de sécurité des iframes, mais je n'ai pas implémenté quoi que ce soit de ce genre. J'ai tendance à éviter les iframes. –

Répondre

1

Vous pouvez facilement le faire en accédant au contenu à l'intérieur de l'iframe avec jQuery cette façon:

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

Pour vous assurer le contenu iFrame sont chargés lorsque vous exécutez le script, vous devez attendre l'événement de charge jQuery de l'iframe.

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

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

}); 

J'ai eu la même nécessité de vous et a réussi à faire glisser-déposer entre iframes cette façon, et tout fonctionnait correctement.