2012-09-02 7 views
10

मैं अगर एचटीएमएल iframes अपने अभिभावकों से सीएसएस डेटा प्राप्त करती सकता है सोच रहा था:HTML सकते हैं iframes का वारिस सीएसएस और जावास्क्रिप्ट डेटा

Main.html

<html> 
    <head> 
    <style> 
    .highlight{ 
     background: #008fcc; 
     } 
    </style> 
    </head> 
<body> 
    <iframe src='frame.html'></iframe> 
</body> 
</html> 

frame.html

hello <font class='highlight'> 
+1

नहीं, वे नहीं कर सकते हैं। हालांकि जादू <= आईई 7 – Peter

+16

में हो सकता है आईई में कोई जादू नहीं हो सकता ... केवल शाप। – Will

उत्तर

11

संक्षिप्त उत्तर: नहीं, iframe एस सामान्य रूप से शैलियों/स्क्रिप्ट का उत्तराधिकारी/एक्सेस नहीं कर सकता उनके मूल पृष्ठ से है।

लांग जवाब: आप शैलियों में कुछ भी नहीं बदल सकते हैं या एक iframeअगर यह (आप भी जावास्क्रिप्ट के माध्यम से अपने डोम सामग्री नहीं पढ़ सकते हैं) किसी अन्य डोमेन से आ रहा है अंदर आलेख निष्पादित।

दूसरी तरफ, यदि यह आपके मूल पृष्ठ के समान डोमेन से आ रहा है, तो आप अपने मूल पृष्ठ में ऐसा कुछ करने के द्वारा तत्वों की शैलियों को बदल सकते हैं या स्क्रिप्ट निष्पादित कर सकते हैं (यह उदाहरण jQuery का उपयोग करता है, लेकिन यह कर सकता है सादा जावास्क्रिप्ट में लिखा जाना):

$("#iframe_id").contents().document.functionName(functionParams); 

आशा है कि मदद की:

$("#iframe_id").contents().find("#some_div").css({color: "rgb(0, 162, 232)"}); //changed style of a div inside the iframe 

एक समारोह iframe अंदर परिभाषित क्रियान्वित करने के!

4

आप इसे एचटीएमएल 5 सीमलेस आईफ्रेम पर बूलियन पैरामीटर के साथ प्राप्त कर सकते हैं।

https://developer.mozilla.org/en-US/docs/HTML/Element/iframe

लेकिन वर्तमान में यह पूरी तरह से किसी भी आधुनिक ब्राउज़र में लागू नहीं है।

सरल समाधान अपने सभी सीएसएस को एक अलग फ़ाइल में रखना है और इसे मुख्य पृष्ठ और आइफ्राम पेज में शामिल करना है।

+1

यह पैरामीटर अब हटा दिया गया है http://www.w3schools.com/tags/att_iframe_seamless.asp –

+0

पृथ्वी पर क्यों!?!? यह पागल है। इस सरल के लिए अजाक्स स्क्रिप्ट की आवश्यकता नहीं है। यह गैर जेएस साइट बनाने के लिए असंभव बना रहा है। –

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