King Kong
King Kong

Reputation: 2915

How to trigger an iframe event Jquery

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>

Upvotes: 2

Views: 12468

Answers (2)

user1432124
user1432124

Reputation:

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");
    });
});

Upvotes: 8

Captain0
Captain0

Reputation: 2613

try this

ger javascript event from within an iFrame

but look at answer from Gilly

document.myFrameName.myFunction(); 

regards

Upvotes: 1

Related Questions