IFrame

2015-05-15 12 views
11

के साथ JQuery प्लगइन समस्या मेरे पास एक प्लगइन है जो किसी भी वेबसाइट पर उपयोगकर्ता कार्रवाई रिकॉर्ड करता है। क्रियाएं एक ही ब्राउज़र की एक अलग विंडो में दर्ज की जाती हैं। आईई के लिए, यह इफ्रेम वाले लोगों को छोड़कर सभी साइटों पर ठीक से काम करता है। स्क्रिप्ट को निम्न त्रुटि वाले Iframes वाले साइटों पर अवरुद्ध हो जाता है: SCRIPT5: एक्सेस अस्वीकार कर दी गई है।IFrame

यह एक स्वयं निर्मित प्लगइन है।

त्रुटि window.open यह एक नई विंडो खोलने नहीं है पर है ठीक से

नीचे प्लगइन का टुकड़ा है।

newwindow = window.open("", "ScriptGen", "menubar=0,directories=0,toolbar=no,location=no,resizable=yes,scrollbars=yes,width=450,height=250,titlebar=0"); 

newwindow.document.write('<title>New Console</title>'); 

चेतावनी (विंडो) को प्रदर्शित करता है का उपयोग करना "साइटों iframes का होने पर सभी sites..but पर [वस्तु विंडो], यह केवल प्रदर्शित करता है" [वस्तु] "

कृपया मार्गदर्शन।

+0

प्लगइन का नाम क्या है, इसके साथ शुरू करने के लिए? – zfrisch

+0

यह एक स्वयं निर्मित प्लगइन है। –

+0

आईई? क्या यह इसके हर संस्करण या कुछ विशिष्ट संस्करणों पर है? – Jai

उत्तर

0

यह मेरे लिए काम किया अपनी प्लग-इन को चलाने से पहले iframes निर्वासित ..

try{ 
      newwindow = window.open("", "ScriptGen", "menubar=0,directories=0,toolbar=no,location=no,resizable=yes,scrollbars=yes,width=450,height=250,titlebar=0"); 
      console.log(newwindow.document); 
     } 
     catch (error) { 
      console.log("Error catched"); 
      newwindow.close(); 
      useDomain = true; 
      var domain = document.domain; 
      newwindow = window.open("javascript:document.write('<script>document.domain=\"" + document.domain + "\"</script>')", "ScriptGen", "menubar=0,directories=0,toolbar=no,location=no,resizable=yes,scrollbars=yes,width=450,height=250,titlebar=0"); 
    } 

आपकी मदद के लिए सभी को धन्यवाद।

3

मैं डॉन 'टी पता है jQuery के किस संस्करण का उपयोग कर रहे हैं, लेकिन मुझे लगता है कि 1.11.0 करने के लिए आप अद्यतन करना चाहिए:

https://jsfiddle.net/j3LaC/ - 1.10.1 (काम नहीं कर रहा) के साथ इस प्रयास करें, और 1.11.0 साथ (कार्य)

HTML:

<div id="body"></div> 
<input id="button" type="button" value="Submit iframe"/> 

जावास्क्रिप्ट:

var iframe = $("<iframe></iframe>").appendTo("#body")[0]; 
var doc = iframe.document; 
var content = '<form method="get"><input name="hidden" type="hidden" value="123"/></form>'; 
doc = iframe.contentDocument; 
doc.writeln(content); 
doc.close(); 

$('input#button').click(function() { 
    $('iframe').contents().find('form')[0].submit(); 
}); 

सीएसएस:

iframe { 
    height: 300px; 
    width : 100%; 
} 
+0

आपके उत्तर के लिए धन्यवाद ... मैंने कोशिश की लेकिन यह भी मेरी समस्या को हल नहीं कर रहा है .. । –