如果您的网页包含包含文本区域的 iFrame,则使用标准 JavaScript 技术访问文本区域的值时可能会遇到困难。通常,您可以使用 window.parent.getElementById().value 来检索父页面中的值。然而,由于 iFrame 的孤立特性,这种方法会失败。
要解决此限制,需要动态解决方案,因为 iFrame ID 和名称可能会在运行时发生变化。关键在于访问 iFrame 内容而不依赖其 ID 或名称。以下 JavaScript 代码提供了全面的解决方案:
function iframeRef( frameRef ) { return frameRef.contentWindow ? frameRef.contentWindow.document : frameRef.contentDocument } var inside = iframeRef( document.getElementById('one') )
此代码采用 iFrame 引用并动态识别 iFrame 是否使用 contentWindow 还是 contentDocument。然后它将引用分配给内部变量。
使用内部变量,您现在可以访问 iFrame 中的元素,在本例中,还可以访问文本区域:
inside.getElementsByTagName('textarea')
This全面的解决方案提供对 iFrame 内元素的可靠访问,无论其运行时更改的 ID 或名称如何。
以上是如何使用 JavaScript 访问 iFrame 内的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!