2013-05-02 4 views
5

से निकटतम निर्दिष्ट अभिभावक div के लिए मैं PQuery के अंदर iframe.prependTo.classdiv के अंदर से JQuery का उपयोग करने का प्रयास कर रहा हूं।प्रीपेन्ड एक आईफ्रेम

इसमें इसके गुणक हैं। क्लास। ** संपादित करें और iframes

सब कुछ एक ही डोमेन पर है।

तो, मुख्य दस्तावेज़ के अंदर से:

<div class="NewPHOTOS"> 
    **<!--PUT ME HERE!-->** 
    <div class="LinePhoto"> 
     <a href="images/518279f07efd5.gif" target="_blank"> 
      <img src="images/thumb_518279f07efd5.gif" width="50" height="50"> 
     </a> 
    </div> 

    <iframe class="uploadLineID_55" width="800px" height="25px" src="../../uploads/uploadiframe.php" scrolling="no" seamless></iframe> 
</div> 

स्क्रिप्ट के अंदर आइफ्रेम:

$(document).on("click", '#TEST', function() { 

    appendImagetoParent(); 

}); 


function appendImagetoParent() { 

var data = '<div class="LinePhoto"><a href="images/TEST.gif" target="_blank"><img src="images/thumb_TEST.gif" width="50" height="50"></a></div>'; 

$(".NewPHOTOS", window.parent.document).each(function() { $(data).prependTo($(".NewPHOTOS")); 
}); 

/* $(data).prependTo($(".NewPHOTOS", window.parent.document)); This prepends to Every .NewPHOTOS */} 

मैं हलकों में चारों ओर चल रही है और अब घंटे के लिए googleing। मैं इसे समझ नहीं सकता।

मैं यहाँ क्या गलत कर रहा हूं?

EDIT मैंने उपयोग किया, बहुत अच्छा काम करता है!

$(parent.document).find('.' + frameElement.className) 
         .closest('.NewPHOTOS') 
         .prepend(data); 
+2

क्या पृष्ठ पर कक्षा न्यूफोटोस के साथ एक div के अंदर एक से अधिक iframe है? – Dale

+1

प्रत्येक आईफ्रेम की लोड इवेंट के लिए मूल पृष्ठ में श्रोता को संलग्न करना बेहतर हो सकता है, इस तरह आप अपने माता-पिता ('न्यूफॉट्स') – Dale

+0

हां फ्रेम और कसरत को लक्षित कर सकते हैं। दोनों गुणक हैं। – Monty

उत्तर

3
$(document).on("click", '#TEST', appendImagetoParent); 

function appendImagetoParent() { 

    var div = $('<div />', {'class':'linePhoto'}), 
     a = $('<a />', {href:'images/TEST.gif', target:'_blank'}), 
     img = $('<img />', {src:'images/thumb_TEST.gif', width:'50', height:'50'}); 

    $(parent.document).find('.' + frameElement.className) 
         .closest('.NewPHOTOS') 
         .prepend(div.append(a.append(img))); 
} 

frameElement.className साथ युक्त iFrame के वर्ग प्राप्त करें, और उस वर्ग का उपयोग मूल दस्तावेज़ में सही iFrame लगता है, तो निकटतम .NewPHOTOS तत्व मिल जाए, और सामग्री, एक और अधिक में बनाया पहले जोड़ें jQuery'ish रास्ता।

+0

ऐसा हुआ ... धन्यवाद! – Monty

+0

@ मॉन्टी - यह उत्कृष्ट है, क्योंकि मुझे 100% यकीन नहीं था कि यह होगा, और मेरे पास इसका परीक्षण करने का कोई वास्तविक तरीका नहीं था! – adeneo

संबंधित मुद्दे