2010-12-20 23 views
5

Bir iframe'in dışında sürüklenebilir bir şey ve bunun içine düşülebilir bir hedefim var. Burada iframe'i, src özniteliği tarafından yüklenen HTML'nin bir pasajını içerdiğini gösterdim.jQuery ve iframe'ler ve garip konumlandırma: bir geçici çözüm var mı?

$("#iframe").load(function() { 
    var $this = $(this); 
    var contents = $this.contents(); 

    contents.find('#droppable').droppable({ 
     drop: function (event, ui) { alert('dropped'); } 
    }); 
    $('#draggables img').draggable(); 
}); 

Draggables sürüklenebilir hale gelir ve droppable başarıyla bir damla hedeftir:

<div id="draggables"> 
    <img src="drag-me.gif"> 
</div> 

<iframe src="iframe-src.html" id="iframe"> 
    <!-- HTML gubbins --> 

    <div id="droppable">&nbsp;</div> 

    <!-- More HTML gubbins --> 
</iframe> 

Ben şeyler yapmak için bazı jQuery (UI/sürüklenebilir droppable) kullanın. Sorun, açılan alanın iniş alanının ekranda görüntülendiği yerde olmamasıdır. Yani, sürüklenebilir bırakma hedefin üzerinde bir yere bırakıldığında ve hedefin kendisinde değilken uyarı tetiklenir.

Birkaç testte, hedefin ekranda nerede olduğu ve jQuery'nin düşündüğü yer arasındaki farkın, sayfadaki iframe'in dikey konumuyla ilgili olduğunu ileri sürdüm, ancak doğrudan bir korelasyon bulamıyorum. Bu problemin herhangi bir yerde herhangi bir kişi tarafından araştırılıp sorgulanmadığını, herhangi bir şey olup olmadığını, çözdüğünü bilen var mı?

Bunu yapan bir kişi, bir iframe kullanmadan ve iki sayfanın yapıları ve stilleri birbirine müdahale etmeden, sayfama harici bir HTML dosyası yükleyebilmemin bir yolunu önerebilir mi? İç sayfayı doğrudan yüklemeyi ve etrafındaki sayfa denetimlerini çizmek için javascript kullanmayı düşünüyorum. Sen çocuk iframe içinde üst öğe erişmeye çalışıyorsanız

+0

ben aynı sorunla karşı karşıya am !! – Dharmesh

+0

başarabilirseniz bana bildirin http://stackoverflow.com/questions/36368327/dropping-a-draggable-div-into-sortable-table-which-is-inside-the-iframe-and -on-d Ofset'in, GIST yoluyla aşağıya kaydırma kısmı için bir güncelleme görmemiş olmasına rağmen göründüğü anlaşılıyor. – Twisty

cevap

0

TIA Altreus. Kişisel olarak test etmedim, ancak jQuery selektörünüzün içeriğini ayarlamaya çalışıyorum. Aksi takdirde, yalnızca geçerli iFrame'in içine bakacaktır.

$('#draggables img', parent).draggable(); 
+0

Soru şu an üç yıla kadar devam ediyor, ama her halükarda, bu benim için çalışıyor gibi görünüyor: '$ ('# sürükler img', window.top.document)' –

İlgili konular