Js操作iframe

来源:互联网 发布:电脑计算软件编写 编辑:程序博客网 时间:2024/06/13 00:47

Js操作iframe核心是操作本页面跟iframe的window对象


比较常用的案例:通过iframe来无刷新登录(远古的ajax)重点在:form的target


<div id="pop_loginBox"><div class="pop_loginL"><div class="pop_loginMain"><form name="myloginform" method="post" action="/chkLogin.php" target="denglubox" id="myform"><input type="hidden" name="action" value="fmlogin" /><div class="pop_loginItem" id="pop_loginItem"><input type="text" id="lg_username" name="username" value=""></div><div class="pop_loginItem" id="pop_loginItem2"><input type="password" id="lg_password" name="passwd" value=""></div><div class="pop_loginRem"><a href="javascript:;" target="_blank">忘记密码?</a><span><input class="chk" type="checkbox" name="autologin" id="lg_rem" value="1" checked=""><label for="lg_rem">记住我</label></span></div><div class="pop_loginBtn"><a id="popLoginBtn" href="javascript:jklogin();">登录</a></div></form></div></div><div class="pop_loginR"><h2>使用合作网站账号登录:</h2><a href="javascript:;" id="pop_qqLogin"></a><h3>还没有帐号?<a href="javascript:;" target="_blank">马上注册</a></h3></div></div><iframe style="display:none;" name="denglubox"></iframe>

然后我们在php端 通过判断用户名和密码 如果正确就写入cookie 然后再

 echo '<script>parent.jkloginok();alert("'.$contentArr["msg"].'");</script>';


jkloginok做的工作主要是 判断是否存在cookie  通过局部刷新实现登录


这里在iframe中想要访问父级的方法 可以用parent.xxx();


父页面调用子页面方法:FrameName.window.childMethod();

子页面调用父页面方法:parent.window.parentMethod();


另外,有些钓鱼网站喜欢通过一个iframe抓取别人网站的内容显示在一个框架中,防被别人网页嵌入其框架中,解决办法:

<script type="text/javascript">if(window != window.top){// 判断当前的window对象是否是top对象window.top.location.href = window.location.href;// 如果不是,将top对象的网址自动导向被嵌入网页的网址}</script>




0 0