2011-05-28 14 views
11

ठीक है, मैं किसी पृष्ठ पर एक आईफ्रेम का उपयोग कर रहा हूं। आईफ्रेम के भीतर की सामग्री का कोई नियंत्रण नहीं है और इसका उपयोग एडोब फ्लैश प्रोग्राम के साथ किया जा रहा है।iframe में सामग्री के बाद iframe को तोड़ने की आवश्यकता है

लेकिन एक बार फॉर्म आईफ्रेम के भीतर जमा हो जाने के बाद (फिर से मेरा कोई नियंत्रण नहीं है), यह एक पृष्ठ लोड करता है, मेरे पास नियंत्रण होता है, लेकिन उस पृष्ठ को IFRAME के ​​अंदर आईफ़्रेम से बाहर तोड़ने के बजाय उस पृष्ठ पर। मैं केवल उस पृष्ठ पर आईफ्रेम से कैसे टूट सकता हूं ??

मैं यह सोचते हैं रहा है कि कुछ जावास्क्रिप्ट की जरूरत है, लेकिन इस कोड अच्छा नहीं है:

if (top.location != self.location) { 
top.location = self.location; 
} 

इस कोड को लोड साइट के लिए मुख्य सूचकांक पृष्ठ का उपयोग करना। फॉर्म जमा होने के बाद मुझे पृष्ठ को लोड करने और इसे तोड़ने के लिए मुझे इसकी आवश्यकता है। फिर, मेरे पास उस पृष्ठ तक पहुंच है जो आईफ्रेम के भीतर फ़ॉर्म जमा होने के बाद आईफ्रेम के भीतर लोड हो जाती है।

कृपया मेरी मदद करें।

शायद इसे करने का एक मुश्किल तरीका शामिल है? उदाहरण के लिए जब पृष्ठ लोड किया जा रहा है? या किसी भी तरह से जांचें कि iframe जमा किया गया है? मैं अपनी वेबसाइट पर दोनों पृष्ठों को नियंत्रित करता हूं (वह पेज जो मूल रूप से आईफ्रेम रखता है और जिस पृष्ठ पर आईफ्रेम सबमिट किया जाता है), बस आईफ्रेम सामग्री नहीं।

धन्यवाद :)

+0

से प्रेरित होकर आप बाहरी पेज में या iframe के पृष्ठ में कोड डाल रहे हैं? साथ ही, क्या आप अलग-अलग डोमेन वाले बाहरी और आंतरिक पृष्ठों के कारण सुरक्षा समस्या में भाग ले सकते हैं? – ErikE

उत्तर

11

मेरा मानना ​​है कि आप इस

if(this != top){ 
    top.location.href = this.location.href; 
} 

बाहर तोड़ने के लिए यह दस्तावेज़ संदर्भ भी आवश्यकता हो सकती है चाहता हूँ ... मैं जाँच करने के लिए एक कंप्यूटर पर नहीं कर रहा हूँ।

if(this != top){ 
    top.document.location.href = this.document.location.href; 
} 
+0

मैं उस कोड कहां रखूं? सिर में? यह कैसे पता चलता है कि यह 'क्या है? या जावास्क्रिप्ट के भीतर क्या 'शीर्ष' है? क्या यह स्वचालित रूप से इसे जानेगा, या इसे परिभाषित किया जाना चाहिए? – SoLoGHoST

+0

यह काम नहीं करता है, यह अभी भी यूआरएल के बजाय साइट इंडेक्स पर ले जा रहा है जो आईफ्रेम जाता है। – SoLoGHoST

+0

पृष्ठ का यूआरएल क्या है? और क्या केवल एक फ्रेम है? मैं पूछता हूं क्योंकि मैंने इस कोड को कई बार इस्तेमाल किया है और मुझे पता है कि यह काम करता है। हां, आप इसे सिर में या शरीर में रख सकते हैं ... शीर्ष शीर्षतम विंडो का वैश्विक संदर्भ है, और यह स्वचालित रूप से "इस" विंडो को प्रतिबिंबित कर रहा है। पीएस मैं थोड़ा गुम हो सकता है, इसे पूरे नाम में 'दस्तावेज़' की आवश्यकता हो सकती है। – scunliffe