1、iframe子頁面調用 父頁面js函數
子頁面調用父頁面函數只需要寫上window.praent就可以了。比如調用a()函數,就寫成:
window.parent.a();
子頁面取父頁面中的標簽中的值,比如該標簽的id為“test”,則:
window.parent.document.getElementById("test").value;
jQuery方法為:
$(window.parent.document).contents().find("test").val();
但是我在chrome浏覽器下卻發現此方法無效了!查了半天才了解,在chrome 5+中,window.parent無法在file://協議中運行,但是發布了之後http://協議下是可以運行的。此方法支持ie、firefox浏覽器。
2、iframe父頁面調用 子頁面js函數
這個就稍微復雜一些,下面的方法支持ie和firefox浏覽器:
document.getElementById('ifrtest').contentWindow.b();
子頁面取父頁面中的標簽中的值,比如該標簽的id為“test”,則:
document.getElementById("test").value;
注:ifrtest是iframe框架的id,b()為子頁面js函數。contentWindow屬性是指定的frame或者iframe所在的window對象,IE下可以省略。