How to call a function in an iframe from the parent page?

前端 未结 5 746
无人共我
无人共我 2020-12-17 00:20

How to call a function in an iframe from the parent page?

相关标签:
5条回答
  • 2020-12-17 00:42

    As long as the framed page is on the same domain (or on a sub-domain, and you're setting document.domain), you need to access the contentWindow property of the frame element. For example:

    $("#myFrame")[0].contentWindow.myFunction();
    
    // or, if jQuery hasn't made you lazy 
    document.getElementById("myFrame").contentWindow.myFunction();
    

    Most browsers also support contentDocument, but Internet Explorer doesn't. If your framed page is on a different domain then you'll get an Access Denied error.

    0 讨论(0)
  • 2020-12-17 00:49
    $("iframe").each(function()
    {
        $(this).one("load", function()
        {
            $(this)[0].contentWindow.myFunction();
        });
    });
    

    It is necessary to loaded iframe ;)

    0 讨论(0)
  • 2020-12-17 00:51

    Do it like a pro:

    $("#myFrame").prop('contentWindow').abc();
    
    0 讨论(0)
  • 2020-12-17 00:51

    did you try?

    top.frames['my_frame'].myFunc();
    
    0 讨论(0)
  • 2020-12-17 00:57

    You can select the iFrame using its id

    document.getElementById(iframeId).contentDocument
    

    but I am not sure you can access its JavaScript, especially if child iFrame is from different domain

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