2013-02-27 203 views
8

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

<script> 
function removeiframe() { 
      alert("Hello Lovely World"); 
      var markup = document.body.innerHTML; 

      var filtered=markup.replace(/(<iframe.*?>.*?<\/iframe>)/g,""); 
      alert("he: " + markup); 
//markup = Regex.Replace(markup, @"<script.*?/script>", "", RegexOptions.IgnoreCase); 
//markup = Regex.Replace(markup, @"<iframe.*?/iframe>", "", RegexOptions.IgnoreCase); 
markup = filtered; 
document.body.innerHTML = markup + "<hr><hr>HELLO"; 
     } 
</script> 
<body onload="removeiframe()"> 

     <iframe marginheight="0" src="http://www.metalgearrisingguide.com" marginwidth="0" frameborder="0" height="180" scrolling="no" width="210"></iframe><br> 
</body> 

उत्तर

16

यहां एक स्क्रिप्ट है जिसे आप चला सकते हैं जो आपके दस्तावेज़ से सभी iframes को हटा देगा। http://jsfiddle.net/5hh9H/

var iframes = document.querySelectorAll('iframe'); 
for (var i = 0; i < iframes.length; i++) { 
    iframes[i].parentNode.removeChild(iframes[i]); 
} 
+0

वाह! ठंडा! धन्यवाद मैटडिअमेंट! – OneNation

+0

यदि यह एक से अधिक iframe है, तो यह कोड ठीक से काम नहीं करता है, क्योंकि इस मामले में iframes एक लाइव संग्रह है, जो तब तक अद्यतन करता है जब तक हम दस्तावेज़ –

+0

@ s.ermakovich से iframes को हटाते हैं, मुझे नहीं लगता कि यह आवश्यक है , लेकिन मैंने इसे किसी भी स्थिर संग्रह में बदल दिया। – MattDiamant

0

आपको div तत्व के अंदर iframe डालना चाहिए।

<div id="kk"> 
    //your iframe 
</div> 

फिर आईफ़्रेम को हटाने के लिए jQuery का उपयोग करें।

$('#kk').click(function(){ 
    $(this).html(""); 
}); 

यह एक संभावित समाधान है।

4

आप क्यों दस्तावेज़ में iframes हटाने की जरूरत का उल्लेख नहीं था: यहाँ यह काम कर का एक उदाहरण है।

मैं क्लिकजैकिंग हमले को रोकने के लिए ऐसा करता हूं। लेकिन यह किसी भी मामले में काम करेगा।

आप इस की जरूरत है:

<style id="defendClickjack" type="text/css">body{display:none;}</style> 

और फिर

<script type="text/javascript"> 
    if (self === top) { 
     var defendClickjack = document.getElementById("defendClickjack"); 
     antiClickjack.parentNode.removeChild(defendClickjack); 
    } 
    else { 
     top.location = self.location; 
    } 
</script> 

आप यहाँ अधिक जानकारी प्राप्त कर सकते हैं:

+0

मुझे यह जवाब भी पसंद है! – OneNation