एक iframe से पैरेंट विंडो को रीडायरेक्ट करने के लिए मुझे किस जावास्क्रिप्ट का उपयोग करने की आवश्यकता है?
मैं चाहता हूं कि वे एक हाइपरलिंक पर क्लिक करें जो जावास्क्रिप्ट या किसी अन्य विधि का उपयोग करके मूल विंडो को एक नए URL पर पुनर्निर्देशित करेगा।
एक iframe से पैरेंट विंडो को रीडायरेक्ट करने के लिए मुझे किस जावास्क्रिप्ट का उपयोग करने की आवश्यकता है?
मैं चाहता हूं कि वे एक हाइपरलिंक पर क्लिक करें जो जावास्क्रिप्ट या किसी अन्य विधि का उपयोग करके मूल विंडो को एक नए URL पर पुनर्निर्देशित करेगा।
जवाबों:
window.top.location.href = "http://www.example.com";
जैसा कि पहले कहा गया है, अभिभावक iframe को पुनर्निर्देशित करेगा।
sandbox
" - developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe यह sandbox
विशेषता iframe आधारित कुछ कार्यों के लिए जावास्क्रिप्ट को रोकती है अनुमत कार्यों के दिए गए श्वेतसूची पर। allow-top-navigation
संपत्ति कार्यों आप श्वेत सूची है, जो काम के लिए इस कोड की अनुमति देता है में सक्षम कर सकते हैं में से एक है। यदि sandbox
विशेषता अनुपस्थित है, तो सभी कार्यों की अनुमति है। यदि यह मौजूद है और एक खाली स्ट्रिंग है, तो सभी कार्यों से इनकार कर दिया जाता है।
मैंने पाया कि <a href="..." target="_top">link</a>
काम भी करता है
window.top.location.href = "http://example.com";
window.top
फ्रेम पदानुक्रम के शीर्ष पर पृष्ठ के विंडो ऑब्जेक्ट को संदर्भित करता है।
या एक विकल्प निम्नलिखित है (दस्तावेज़ ऑब्जेक्ट का उपयोग करके)
parent.document.location.href = "http://example.com";
parent.location.href = ...
। developer.mozilla.org/en/document.location
target="_parent"
मेरे लिए बहुत अच्छा काम किया। आसान और परेशानी मुक्त!
@MIP सही है, लेकिन सफारी के नए संस्करणों के साथ, आपको iFrame पर रीडायरेक्ट एक्सेस देने के लिए सैंडबॉक्स विशेषता (HTML5) को जोड़ना होगा। कुछ विशिष्ट मूल्य हैं जिन्हें उनके बीच के स्थान के साथ जोड़ा जा सकता है।
संदर्भ (आपको स्क्रॉल करने की आवश्यकता होगी): https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
उदाहरण के लिए:
<iframe sandbox="allow-top-navigation" src="http://google.com/"></iframe>
sandbox
विशेषता सामग्री में सामग्री के लिए प्रतिबंधों के एक अतिरिक्त सेट को सक्षम करती है <iframe>
। sandbox
संपत्ति का मूल्य विशेष प्रतिबंधों को हटा देता है। इसलिए इस सुविधा का उपयोग करके देखें। w3schools.com/tags/att_iframe_sandbox.asp
यदि आप उपयोगकर्ता के बिना किसी अन्य डोमेन पर पुनर्निर्देशित करना चाहते हैं, तो आपके पास संपत्ति के साथ लिंक का उपयोग करने के लिए कुछ भी हो सकता है:
target="_parent"
जैसा कि पहले कहा गया था, और फिर उपयोग करें:
document.getElementById('link').click();
इसे स्वचालित रूप से पुनर्निर्देशित करना है।
उदाहरण:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<a id="link" target="_parent" href="outsideDomain.html"></a>
<script type="text/javascript">
document.getElementById('link').click();
</script>
</body>
</html>
नोट: आपके द्वारा लिंक घोषित करने के बाद जावास्क्रिप्ट क्लिक () कमांड आनी चाहिए।
प्रयोग करके देखें
window.parent.window.location.href = 'http://google.com'
parent.location = 'url'
window.top.location.href = 'index.html';
यह मुख्य पेज को इंडेक्स पेज पर रीडायरेक्ट करेगा। धन्यवाद
हमें iframe एक्शन से पेरेंट विंडो को रीडायरेक्ट करने के लिए window.top.location.href का उपयोग करना होगा।
डेमो url :
एक ही माता-पिता में iframe द्वारा मूल विंडो में iframe पुनर्निर्देशित करें:
window.parent.document.getElementById("content").src = "content.aspx?id=12";
IFrame
भी,। चूंकि स्वीकृत उत्तर शीर्ष विंडो को संबोधित करता है , मेरा सुझाव है कि आप अपने प्रश्न को थोड़ा बदल दें।