用jquery进行修复在iframe下的页面锚点失效问题

用jquery进行修复在iframe下的页面锚点失效问题

ID:31196953

大小:64.07 KB

页数:6页

时间:2019-01-07

用jquery进行修复在iframe下的页面锚点失效问题_第1页
用jquery进行修复在iframe下的页面锚点失效问题_第2页
用jquery进行修复在iframe下的页面锚点失效问题_第3页
用jquery进行修复在iframe下的页面锚点失效问题_第4页
用jquery进行修复在iframe下的页面锚点失效问题_第5页
资源描述:

《用jquery进行修复在iframe下的页面锚点失效问题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、用jquery进行修复在iframe下的页面锚点失效问题应用场景是:iframe页面没有滚动条,在父窗体中出现滚动条,锚点标记就会失效,因为,锚点是根据当前窗口滚动条滚动窗口的,成为子窗体后没有了滚动条,自然不会滚动。解决办法是:用js判断页面是否被嵌套,用js计算iframe在父窗体位置,锚点在firame中的位置,两者相加成为父窗体的滚动。遇到问题:获取父窗体元素(因为有域限制,所有需要在网络环境下方位(即));父窗体嵌套多个iframe,判断是否是当前iframe页面。代码如下:父窗体页面index.html复制代码代码如下:It;!doctypeh

2、tmlgt;1tjhtmlgt;It;headgt;1t;titlegt;1t;/titlegt;It;styletype=text/cssgt;*{margin:0;padding:0:border:0;}html,body{width:100%;height:100%;}It;/stylegt;It;/headgt;It:divstyle=width:100%;background:#f00;height:500px;gt;It;/divgt;It:ahref=gt;ddlt;/agt;It;ahref=gt;dddlt;/agt;c=iframe・h

3、tlt;iframename=ifra.me2id=iframe2srml?a=bamp;c=dstyle二width:100%;height:2060px;gt;It;/iframegt;It;iframename=iframe2id=iframe2src=iframe・html?a=damp;c=bstyle=width:100%;height:2060px;gt;1t;/iframegt;It;/bodygt;It:/htmlgt;子窗体页面iframe.html复制代码代码如下:It;!doctypehtmlgt;Itjhtmlgt;1t;head

4、gt;It;titlegt;lt;/titlegt;It;styletype=text/cssgt;a{padding:5px;border:lpxsolid#f00;float:left;display:block;margin-right:5px;}div{width:80%;margin:lOpxauto;height:50Opx;border:lpxsolid#f00;font-size:30px;It;/stylegt;1t;scripttype二text/javascriptsrc=jquery-1.8.2.min.jsgt;1t;/scrip

5、tgt;It;scripttype=text/javascriptgt;$(function(){//如果是iframe则需要在网络中访问,因为js里有域限制//如果没有iframe则不进行处理,if(window!==window.top){//获取top窗口中的iframe,如果有iframe嵌套过多,请自行修改variframe1ist=window・top.document・getelementsbytagnameCiframe5);for(vari=0;ilt;iframelist.length;i++){//判断当前窗口是否循环中的iframe

6、if(window.location.tostring()・indexof(iframelist[i]・getattribute('src')・tostring())!=-1){//等自己的所在iframe加载完成给a锚点加事件window.top・document・getelementsbytagnameCiframe,)[i]・onload二function(){//确定iframe在父窗体的距顶部距离vartop=window.top.document.getelementsbytagnameCiframe')[i]・offsettop;$('a')

7、.each(function(){varhref=$(this).attr('href');if(href.indexof('#')!=T){//判断是否是锚点而不是链接varname=href・substring(href・indexof(')+1);$(this).bindCclick',function(){$C).each(funotion(){if($(this)・attrCname')==name){//父窗口滚动$(window.parent)・scrolltop($(this)・offset().top+top);}});});}});})

8、;It;/scriptgt;It;/headgt;It;bodyg

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。