How to Load iframe content in Popup div?

前端 未结 3 549
情歌与酒
情歌与酒 2021-02-08 19:57

How to Load iframe content in Popup div. popup div will be open on click of each link from each link, page url will load to iframe href inside popup div.

$(docu         


        
相关标签:
3条回答
  • 2021-02-08 20:01

    You can also use this

    $('#clickme').click( function(){
        $('#showDiv').show();
        $('#iframe').attr('src','your url');
    });
    
    0 讨论(0)
  • 2021-02-08 20:04
      <script>
    
      $(document).ready(function(){
      $(".openpop").click(function(){
        var x =    $(this).attr('href');
        y =  x.replace('#', '');
        $(".popup").show().html('<iframe src="'+y+'"></iframe>');
        $("iframe").attr("href", y);
    
    
      });
    
       $(".close").click(function(){
         $(this).parent().fadeOut("slow");
      }); 
    
    });
    
      </script>
    

    you can not open google and yahoo in iframe both site don't allow for it please see this link Why Iframe dosen't work for yahoo.com

    but you can open w3school with this code

    0 讨论(0)
  • 2021-02-08 20:19

    First, you don't need # in the link. Just call e.preventDefault(); to stop the link from executing.

    For security reasons you can't open every link eg. google.

    Also you might not use toggle because you allways have to click it twice if a frame is opend already.

    here is a working fiddle

    html

    <div class="links">
        <a class="openpop" href="http://getbootstrap.com/">Link 1</a>
        <a class="openpop" href="http://www.jsfiddle.net">Link 2</a>
        <a class="openpop" href="http://www.w3schools.com">Link 3</a>
    </div>
    <div class="wrapper">
        <div class="popup">
            <iframe src="">
                <p>Your browser does not support iframes.</p>
            </iframe>
    <a href="#" class="close">X</a>
        </div>
    </div>
    

    jquery

    $(document).ready(function () {
        $(".popup").hide();
        $(".openpop").click(function (e) {
            e.preventDefault();
            $("iframe").attr("src", $(this).attr('href'));
            $(".links").fadeOut('slow');
            $(".popup").fadeIn('slow');
        });
    
        $(".close").click(function () {
            $(this).parent().fadeOut("slow");
            $(".links").fadeIn("slow");
        });
    });
    

    of course you have to do some changes in styling for better view experience :)

    0 讨论(0)
提交回复
热议问题