2011-10-04 8 views
33

मेरे पास एक परिदृश्य है जहां मेरे पास एक पृष्ठ है, जिसमें <script> टैग और उसके भीतर कुछ वैश्विक जावास्क्रिप्ट चर हैं। मेरे पास उस पृष्ठ के भीतर एक आईफ्रेम भी है और मैं iframe में पृष्ठ के वैश्विक जावास्क्रिप्ट चर का उपयोग करना चाहता हूं।उस पृष्ठ के भीतर आईफ्रेम के साथ किसी पृष्ठ के वैश्विक जावास्क्रिप्ट चर साझा करना

क्या यह संभव है ?, यदि हां, तो मैं यह कैसे कर सकता हूं?

+0

स्पष्ट विचार के लिए कुछ नमूना कोड .. –

उत्तर

52

आसानी से parent.your_var_name को अपने iframe की स्क्रिप्ट में कॉल करके।

एक शर्त: दोनों पृष्ठ (मुख्य और iframe) को एक ही डोमेन पर होना चाहिए।

मुख्य पृष्ठ:

<script> 
var my_var = 'hello world!'; 
</script> 

आइफ्रेम

<script> 
    function some_fn(){ 
    alert(parent.my_var); //helo world! 
    } 
</script> 
+6

धन्यवाद प्रदान करते हैं:

यहाँ एक ही डोमेन में मुख्य दस्तावेज़ (या एक iframe) से आइफ्रेम चर myVar उपयोग करने के लिए कोड है बस एहसास हुआ कि मैं जावास्क्रिप्ट के साथ कितना बुरा हूं: पी – Ankit

33

संभव नहीं है, तो आइफ्रेम और मुख्य दस्तावेज़ (क्रॉस डोमेन सुरक्षा नीति के कारण) एक ही डोमेन में नहीं हैं।

इस सीमा को बाईपास करने के लिए आप क्रॉस डोमेन मैसेजिंग का उपयोग कर सकते हैं।

संभवतः iframe एक मुख्य दस्तावेज़ एक ही डोमेन में हैं, तो आप उनके वैश्विक चर तक पहुंच सकते हैं। ऐसी वस्तुएं हैं जो आईफ्रेम या मुख्य पृष्ठ की विंडो ऑब्जेक्ट से संबंधित हैं। ,

document.getElementById('iframeid').contentWindow['myvar']; 
+2

आपके समय के लिए धन्यवाद! जिस तरह से मैं iframe पर पेज वैरिएबल तक पहुंचना चाहता था, आपने मुझे रिवर्स बताया। – Ankit

+5

रिवर्स को देखने के लिए अभी भी काफी उपयोगी है। – johnbakers

+0

क्या आप इस संदर्भ में "क्रॉस डोमेन मैसेजिंग" को स्पष्ट कर सकते हैं? –

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

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