Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
124 views
in Technique[技术] by (71.8m points)

javascript - Hide content inside iframe?

Here is my situation.

I have a file called iframe.html. which has code in below,

<!DOCTYPE html>
<html lang="eng">
    <head>
        <meta charset="UTF-8"/>
        <title>Pluign Development</title>

        <script src="js/jquery-1.11.0.js" type="text/javascript"></script>
    </head>

    <body>

        <iframe id="abc" src="test.html"></iframe>
        <div id="sub">click</div>
    </body>

    <script src="js/script-22.js" type="text/javascript"></script>
</html>

and i have test.html file. which has code in below,

<!DOCTYPE html>
<html lang="eng">
    <head>
        <meta charset="UTF-8"/>
        <title>Pluign Development</title>

    </head>

    <body>

        <div id="red">prasanga karunanayake </div>
    </body>


</html>

here is js code what i have tried,

(function($){ 

    var fire = {
        init:function(){
            $('#sub')
            .on('click', function(){
                $('#red', parent.document).css('display','none');
            });
        }
    };
    fire.init();

}(jQuery));

Here is my situation.

i need to hide <div id="red">prasanga karunanayake </div> which is in the test.html file. if i click <div id="sub">click</div> then hide html content which is in the test.html.

I am pretty much confused,Your help is appreciated.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You can use .contents() this way:

$('#abc').contents().find('#red').hide();

Another thing is, As you have wrapped your code in a closure which runs as page response gets in the browser. So it might be possible that this code change would not work.

Instead i suggest you to put a dom ready block also for this:

(function($){ 
    $(function(){ // <---add this block from here to
      var fire = {
        init:function(){
            $('#sub').on('click', function(){
                $('#abc').contents().find('#red').hide();
            });
        }
      };
      fire.init();
  }); //<----here
}(jQuery));

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...