2011-05-03 20 views
17

Bir iframe olan bir sayfam var. Sayfa her yüklendiğinde iframe benzersiz bir kimlik ve ona atanan ad alır.Javascript: iframe id sayfasını yükleyiniz.

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

Ama id değeri elde çalıştığınızda: Öyle gibi yüklü iframe içinde iframe adını alabilir

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

Ben undefined olsun?

Yüklenen sayfada iframe'in id niteliğini almak mümkün mü?


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

example.com

http://jsfiddle.net/cqFtB/


:

<!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> 

cevap

45

iframe'de window.frameElement.id deneyin. Bu benim için çalışıyor iframe olarak

alert(parent.window.frames['zma82vRVe18xbAqW'].name); 
+0

bir bağlantı http://jsfiddle.net/cqFtB/ – Pav

+0

yukarıdaki aşağıdaki hatayı veriyor ise: özelliğe erişmek için engellendi 'İzin 'id '' – Pav

+0

iframe ve onu içeren sayfa farklı kaynaklardan geliyorsa bu durum meydana gelebilir. Senin durumunda mı? –

0

Sen iframe isimlerini belirtmeleri gerekir. Ama iframe ve ebeveyn aynı etki alanını paylaşır yalnızca: Burada

this.frameElement.attributes.id 
0

: