web-dev-qa-db-fra.com

Javascript: récupère l'id iframe dans la page chargée

J'ai une page qui a un iframe. Chaque fois que la page est chargée, iframe reçoit un identifiant et un nom uniques. Je peux obtenir le nom d'iframe dans l'iframe chargé comme ceci:

alert(parent.window.frames[window.name].name);

Mais quand j'essaie d'obtenir la valeur id:

alert(parent.window.frames[window.name].id);

Je reçois undefined?

Est-il possible d'obtenir l'attribut id de l'iframe dans la page chargée?


http://jsfiddle.net/cqFtB/


<iframe id="lyygi8stwZSANUEh" src="http://example.com" name="zma82vRVe18xbAqW" title="Awesome Iframe">

example.com:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Awesome Iframe</title>
</head>
<body>
    <script type="text/javascript"> 
        alert(parent.window.frames[window.name].name);
    </script>
</body>
</html>
18
Pav

Essayez window.frameElement.id dans l'iframe.

48
Boris Zbarsky

Dans l'iframe, cela fonctionne pour moi. Mais uniquement si l'iframe et le parent partagent le même domaine:

this.frameElement.attributes.id
0
Michael Brüggemann