最近在开发登入窗口中运用到iframe,其中遇到一些小问题拿出来分享一下。
问题:用jquery的$('parent.document').find('#id')来取父框架的元素,取出来的DOM元素也是正确的,在控制台打印出来了,但调用click()方法就是触发不了绑定的函数
1.父页面有一个打开注册事件:
$('#regis').click(function(){
$('.container').append(regis);
$('.modal-backdrop').click(function(){
$(".loginModal,.modal-backdrop").remove();
});//隐藏
});//打开注册
2.子页面处理方式:
误区:$(window.parent.document).find('#regis').click();
正确处理方式: $前面加上parent
$('#login_res').on('click',function(){
parent.$(window.parent.document).find('#regis').click();
});//触发父页面打开注册事件
科普一下:
父页面访问子页面可以用:
$('#iframeID').contents().find('#元素id')
子页面访问父页面:
$(window.parent.document).find(""#元素id");
或者:$("#元素id",window.parent.document);