How to trigger an iframe event Jquery

2019-07-20 05:50发布

问题:

I have an IFRAME and I want to trigger an event (which is inside the iframe) from the parent of an IFRAME:

Just a rough example of what I am trying to do :

<iframe id="i">
  <div id="test"></div>
  <script>
  $(document).ready(function() {  // Event is binded inside the iframe 

   $("#test").live({ click : function() { alert("hello"); } });
  });
  </script>
</iframe>

<script>
$(document).ready(function() { // Want to trigger it from outside the iframe
 $("#i").contents().find("#test").trigger("click");
});
</script>

回答1:

Your jquery is correct only problem is that that you are doing this when document is ready but at that time iframe is not getting fully loaded therefore div doesn't exist at that time and not triggers click. Change your main page script to

$(document).ready(function() {
    //want to trigger it from outside the iframe
    $("#i").load(function(){
        $("#i").contents().find("div").trigger("click");
    });
});


回答2:

try this

ger javascript event from within an iFrame

but look at answer from Gilly

document.myFrameName.myFunction(); 

regards