У меня есть следующая страница с iframes:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
transitional.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<script type="text/javascript">
alert("test");
elements = document.getElementById("reference").contentWindow.getElementLength();
alert("test2");
</script>
</head>
<frameset cols="20%,*">
<frameset rows="25%,*">
<frame src="./groups.html" name="types">
<frame src="./entities.jsp" name="entities">
</frameset>
<frame src="./reference.jsp" name="reference" id="reference">
</frameset>
</html>
Внутри reference.jsp, у меня есть следующий код:
<html>
<head>
<script type="text/javascript">
function getElementLength(){
alert("in reference");
elements=document.getElementByClassName("link");
alert(elements.length);
}
</script>
</head><body>...</body></html>
Я проверял ранее сообщения StackOverflow об использовании Javascript в разных фреймахи обнаружил, что contentWindow добивается цели, но в этом случае я получаю только первое предупреждение - «test» и кадр с id = «reference» никогда не достигается.Я вижу следующую ошибку в Firebug:
document.getElementById("reference") is null
elements = document.getElement...").contentWindow.getElementLength();
Есть ли что-то, чего мне не хватает, похоже, это очень простой вариант использования.