2013-01-22 21 views
7

में आयात करने के लिए कैसे करें, मैं सिर्फ एक बाहरी स्टाइलशीट और जेएस को आईफ्रेम के हेड टैग में आयात करना चाहता हूं। क्या यह संभव है ?बाहरी स्टाइलशीट और जावास्क्रिप्ट को आईफ्रेम

मैं html में की कोशिश की है एक कस्टम jQuery समारोह `

$(this).contents().find('head').append('<link href="http://mywebsite.com/css/iframe.css?" rel="stylesheet" type="text/css" />')` 
+0

मुझे संदेह है कि आईफ्रेम पहले से ही आपके स्टाइलशीट को शामिल करते समय प्रस्तुत करेगा, इसलिए यह काम नहीं करेगा। क्या आपके पास उस पृष्ठ तक पहुंच नहीं है जिसमें आप अपने आईफ्रेम में शामिल हैं? – drmonkeyninja

+0

@drmonkeyninja मुझे उस पृष्ठ तक कोई पहुंच नहीं है जिसे मैं कॉल कर रहा हूं लेकिन इसमें कुछ सीएसएस परिवर्तन करने की आवश्यकता है और इसमें कस्टम स्क्रॉल बार भी शामिल है। – matthewb

+0

मुझे लगता है कि सुरक्षा कारणों से यह संभव नहीं है। इस तरह आप आसानी से पैसा हस्तांतरण जानकारी बदल सकते हैं और इस तरह .. – Gijs

उत्तर

0

सिर मैं इसे एक iframe जावास्क्रिप्ट का उपयोग के भीतर एक स्टाइलशीट शामिल करने के लिए संभव है के रूप में पहले से ही फ्रेम स्टाइलशीट से पहले प्रदान की है होगा विश्वास नहीं करते जोड़ा गया।

आप .find().css() का उपयोग कर आईफ्रेम के डोम में तत्वों की शैलियों को बदल सकते हैं। (मैंने आईफ्रेम पूर्वावलोकन फलक वाले साइट के लिए थीम जनरेटर बनाने के लिए कुछ ऐसा किया है)।

यदि आप किसी और की वेबसाइट से आते हैं तो आपको आईफ़्रेम के सीएसएस को बदलने से सावधान रहना चाहिए क्योंकि वे किसी भी समय अपना स्वयं का सीएसएस या मार्कअप बदल सकते हैं जो आप जो हासिल करने की कोशिश कर रहे हैं उसे गड़बड़ कर सकते हैं।

2

आईफ़्रेम में विंडो ऑब्जेक्ट उस पृष्ठ की संपत्ति है जो आईफ्रेम में लोड किया गया था। Iframe की विंडो ऑब्जेक्ट में हेरफेर करने के लिए युक्त पृष्ठ के लिए केवल एक तरीका यह है कि यदि युक्त पृष्ठ और iframe पृष्ठ का डोमेन समान है। (क्रॉस-डोमेन प्रतिबंध नीति के कारण)

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