2012-08-24 19 views
8

दोस्तों, मेरी समस्या यह है कि मेरा पृष्ठ लोड करने में वास्तव में धीमा है, क्योंकि सभी लोड एक साथ हैं। मैं एक आरएसएस फ़ीड खींच रहा हूं कि यदि आप "लेख" बटन पर क्लिक करते हैं तो यह एक मॉडल को पॉप अप करेगा जिसमें इसके अंदर है। समस्या यह है कि सभी भार एक साथ लोड हो जाते हैं। http://daisy.camorada.com/मैं केवल एक बटन क्लिक पर <iframes> लोड कैसे कर सकता हूं?

मैं लेकिन यह है कि क्योंकि मैं iframe लोड लगता है कि जब पृष्ठ खोलता है काम नहीं करता है में एक स्रोत डालने की कोशिश की है:

यहाँ साइट है।

<button class='btn btn-primary' id='miguel'>TEST ME NOW</button> 
     <button class='btn btn-primary' id='jamison'>jamison</button> 
     <div id="yoyoyo"> 
      </div> 
      <iframe id="gogo"> 
       </iframe> 

<script> 
     $('#miguel').on('click', function() { 
      alert('clicked');   
      $('#gogogo').attr('href', 'http://www.google.com'); 

     }); 
    </script> 
    <script> 
     $('#jamison').on('click', function() { 
      alert('clicked JAMISON');  
      $("#yoyoyo").html("<h1>HELLO J</h1><br><iframe class='full-iframe' href='http://news.yahoo.com/three-killed-tribal-clash-libya-001717827.html'></iframe>"); 

     }); 

    </script> 

उत्तर

26

एचटीएमएल:

<iframe id="myiFrame" data-src="http://my.url" src="about:blank"> 
</iframe> 

अपने jQuery में:

$("button").click(function(){ 
    var iframe = $("#myiFrame"); 
    iframe.attr("src", iframe.data("src")); 
}); 

या यदि आप सभी iframes का लोड करने के लिए जब आप एक बटन पर क्लिक करें ... बनाने के लिए चाहते थे कि वे सब एक data-src="your.url" है विशेषता, और फिर इस तरह से लूप:

$("button").click(function(){ 
    $("iframe").each(function(){ 
     $(this).attr("src", $(this).data("src")); 
    }); 
}); 
+0

धन्यवाद:

दूसरा, सेट यह src नहीं href

$("#myframe").attr('src', 'http://site.com'); 

है तुम सिर्फ कुछ HTML और नहीं एक यूआरएल के लिए सेट करना चाहते हैं, इस का उपयोग करें। मैंने daisy.camorada.com/test.php पर अपना कोड फिर से बनाया है, दुर्भाग्यवश यह ठीक से काम नहीं कर रहा है। विचार? –

+1

@AlexSpencer - कोड सही है - केवल एक चीज है, Google खुद को आईफ्रेम में एम्बेड करने की अनुमति नहीं देता है! एक और साइट आज़माएं! (उदाहरण के लिए, yahoo.com) – ahren

+0

@ahren यदि एक से अधिक आईफ्रेम हैं तो मैं इसे कैसे काम करूं लेकिन इसे अलग से ट्रिगर किया जाना चाहिए। दो अलग-अलग बटन और दो अलग-अलग iframes। – Lemdor

6

सबसे पहले, आपके पास कोई तत्व $('#gogogo') नहीं है। फ्रेम #gogo है। ahren

$("#myframe").contents().find('html').html("hello"); 

Here's a demo

+0

sachleen, मैंने आपकी विधि यहां कोशिश की: http://daisy.camorada.com/test2.php कोई फायदा नहीं हुआ। क्या आप वाकई एक आईफ्रेम के स्रोत को गतिशील रूप से बदल सकते हैं और यह