How can I attach a click event handler to an element inside an iframe?
Here's what I tried and doesn't work:
$("#parent iframe").contents().find("a").live("click", function () {
alert ("test");
return开发者_JS百科 false;
});
The iframe is on the same domain.
Discovered the problem. LIVE does not work inside an iframe. Switching to bind works fine. Will do manual event delegation instead.
Basically probably not as at a guess the content is likely to be from a different domain (usual use of iFrames). These articles explain why:
iframes and cross domain security Cross-Domain Ajax Insecurity
Alternatively you will need to modify the source code in the iFrame (if you have control over it) or you can ask users to reduce their browser security (might be possible on an intranet, but even then not a good idea).
精彩评论