2014-04-10 28 views
3

例如,这有效吗?`id`属性在iframe中需要是唯一的吗?

<!doctype html> 
<html> 

    <head> 
    <title>Some Iframes</title> 
    </head> 

    <body> 
    <iframe id="frame1" src="/html/test-frame.html"></iframe> 
    <iframe id="frame2" src="/html/test-frame.html"></iframe> 
    </body> 

</html> 

所在的文件test-frame.html具有内容:

<!doctype html> 
<html> 

    <head> 
    <title>Test Iframe</title> 
    </head> 

    <body> 
    <button id="subscribe">Subscribe</button> 
    </body> 

</html> 

我希望能够使用相同的HTML和脚本相同的一组I帧。

+0

你确实在iframe元素中有内容吗?它会被所有支持帧的浏览器忽略,这意味着所有的浏览器,除非特别配置为假装它们不会执行帧。你的意思是'iframe'元素具有'src'属性是指包含相同元素的文档? –

+0

是的。我更新了这个例子,以减少人为操作。 – Mack

回答

2

这是可以接受的和有效的。由于每个页面都是独立的,因此具有自己的独立命名空间和DOM,因此跨iframe使用相同的ID没有任何坏处,只要它在每个iframe文档中只出现一次即可。

+0

该文件在http://validator.w3.org验证(这很奇怪,诚然)。 –

+0

我的错误。事实证明,这些按钮被简单地视为不支持iframe的用户代理的后备内容。 – BoltClock

+0

这个例子很有意思。我将对它进行编辑,以实际从源代码中提取iframe,这就是我正在实施的方式。 – Mack

2

每个页面里面的的一个iframe是完全自包含和独特的。

您可以拥有一个页面和4个iframe,每个iframe可以有一个名为"#the-element"的元素。
当然,你在那里的代码是无效的,但如果每个代码都加载了它自己的单独的HTML,那将是完全可以接受的。

相关问题