2013-02-19 68 views
7

पर एक आईफ्रेम पर सफारी 6 कंसोल के संदर्भ को बदलें, मुझे पता है कि Chrome चलिए आप ड्रॉपडाउन मेनू के साथ कंसोल के निष्पादन के लिए संदर्भ चुनते हैं और फ़ायरबग आपको cd() को आईफ्रेम में जाने देता है। मैं सफारी के कंसोल में संदर्भ को बदलने का तरीका नहीं समझ सकता। क्या किसी को भी यह करना आता है?पृष्ठ

उत्तर

8

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

open -a '/Applications/Safari.app' --args --disable-web-security 

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

window.frames[0] 

पृष्ठ की विंडो तक पहुंचने के लिए कुछ उपयोग कर सकते हैं। जहां तक ​​मैं देख सकता हूं कि विंडोज़ के लिए कोई समान समाधान नहीं है,

Safari.exe --disable-web-security 

गारंटीपूर्वक काम नहीं करता है।

0

iframe तत्व ही कंसोल

भीतर प्रकार खिड़की की है
<iframe id="frame" src="about:blank"/> 

सफारी कंसोल में तो आप बस

frame.document.write('bla'); 

के साथ काम नोटिस दें कि 'फ्रेम' के लिए document.getElementById('frame')

+0

दुर्भाग्य से होस्ट पेज से भिन्न डोमेन के साथ iframes के साथ काम नहीं करता है। यही कारण है कि "संदर्भ" को बदलने के लिए फायरबग 'सीडी' कमांड और क्रोम ड्रॉप डाउन मेनू बहुत उपयोगी है ... –

+0

ज़रूर? मैंने इसे एक अलग यूआरएल के साथ करने की कोशिश की और यह काम किया। केवल पोस्टिंग के लिए मैंने इसे बदल दिया: खाली। –

+0

Yup: http://jsbin.com/ojiley/2 - जब मैं सफारी कंसोल खोलता हूं और टाइप करता हूं: 'document.getElementById ("test-iframe")। दस्तावेज़' मुझे 'अपरिभाषित' मिलता है: http: // cl .ly/image/0N0v1l223w1m –