看到网上有这样描述的:

  现在A页面内分为上下两个部分,上部分是top,下部分分左右,左是treeview右边是iframe,iframe内嵌一个B页面,B页面的内容实质上是个月刊,可以理解为杂志,里面有很多转向到其他页面的连接,问题来了。
如果现在我浏览A页面很长,浏览器滚动条在中间,当我点击B页面的某个连接时,iframe内的页面变了,但是A页面整体无变化,这时滚动条还是在中间的部位,造成的为题就是我看到的iframe里面的内容不是文章的头部,而有可能是直接看到中间部位甚至是尾部(因为我的iframe自适应高度,当文章高度低于iframe高度时他是会收缩的自然的浏览器也就在文章最底部了)。

  ①首先页面的首页是这样的:

  ②然后点击左下部分的“more”按钮,应该展示这样的页面效果,如下:

  ③但是实际上,展示的页面效果是这样的,如下:

  (1)有一个主页面A,A中嵌入一个iframe框架B,如下:

<body>
<div class="main_body">
<!--logo-->
<img class="logo" src="static/images/logo2.png" alt="江苏分中心">
<!--menu-->
<div class="main-menu">
<a href="#" name="link" class="current" onclick="opIframePage(this,'home');">0</a>
<a href="#" name="link" id="news" onclick="opIframePage(this,'news');">1</a>
<a href="#" name="link" onclick="opIframePage(this,'train');">2</a>
<a href="#" name="link" onclick="opIframePage(this,'auth');">3</a>
<a href="#" style="background: orange; color:#fff;" onclick="regist();">4</a>
</div>
<div>
<iframe id="iframePage" style="width: 100%;height: 1000px;overflow-y:scroll;" frameborder="0"> </iframe>
</div>
<footer>
<p>fgd</p>
</footer>
</div>
</body>

  打开iframe中的页面:document.getElementById("iframePage").src =url;
  (2)如果我打开的B页面后,主体页面位于中部或者底部,这就不符合用户的习惯了

  如何改变?

  方法一:在父页面做手脚:

function topTo(){
  document.getElementById(‘iframePage’).scrollIntoView();
}

    其中iframePage是你要定位在页面顶部的元素id,然后在子页面中调用父级页面的方法,parent.topTo();

  方法二:直接在子页面中写方法:parent.scrollTo(0,0);

    这样就可以显示②步的效果了。

iframe中,页面转换后回到页面的顶部的更多相关文章

  1. iframe中,重新加载页面

    比如在iframe中的页面,设置一个onclick事件的触发函数flush function flush(){ window.location.reload(); }

  2. js控制刷新后回到页面原来位置

    1.document.location.reload(); 2.http://www.jb51.net/article/99749.htm

  3. JS刷新后回到页面顶部

    window.location.href = location.href; 方法一: $(window).scrollTop(0); 方法二:$('html ,body').animate({ scr ...

  4. 转---在ASP.NET MVC中实现登录后回到原先的界面

    有这样的一个需求:提交表单,如果用户没有登录,就跳转到登录页,登录后,跳转到原先表单提交这个页面,而且需要保持提交表单界面的数据. 提交表单的页面是一个强类型视图页,如果不考虑需要保持提交表单界面的数 ...

  5. 在ASP.NET MVC中实现登录后回到原先的界面

    有这样的一个需求:提交表单,如果用户没有登录,就跳转到登录页,登录后,跳转到原先表单提交这个页面,而且需要保持提交表单界面的数据. 提交表单的页面是一个强类型视图页,如果不考虑需要保持提交表单界面的数 ...

  6. vue 获取页面详情后 切换页面时 如何监听用户是否修改过信息

    可以用 beforeRouteLeave 和 updated 来判断.export default { name: 'supplier', components:{cmtWrap,cmtContent ...

  7. fastclick使用与 fastclick ios11.3相关bug原因(ios输入框点击变得不灵敏,ios input失焦后,页面上移,点击不了)

    FastClick 移动设备上的浏览器默认会在用户点击屏幕大约延迟300毫秒后才会触发点击事件,这是为了检查用户是否在做双击.为了能够立即响应用户的点击事件,就有了FastClick. 安装fastc ...

  8. 移动端H5页面返回并且刷新页面(BFcache)

    项目中的需求:点击浏览器中的返回按钮,要让页面重新加载资源.因为这部分的资源每次去加载的内容都不一样,如果返回的时候,还是看到原先的内容,那做这个内容块的意义就很小了:而如果用户看完了这部分内容,再返 ...

  9. session失效刷新后登录页面嵌入在iframe中的前台解决办法

    在前台登录页面中加入JS代码,判断登录页面是否在iframe中,在iframe中就跳转出去 例: //判断是否在iframe中,在里面就跳出去 if (top.location.href != loc ...

随机推荐

  1. 转:西部数据NAS设备hack

    通过该文学习一下常见硬件web漏洞.重点关注一下几个方面: 1.登录验证代码: 2.文件上传代码: 3.system/exec/popen等是否存在注入可能: 4.调用二进制文件: 5.未登陆可以访问 ...

  2. Codeforces Round #277 (Div. 2) D. Valid Sets (DP DFS 思维)

    D. Valid Sets time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  3. matlab学习之降噪平滑算法

    平滑降噪测试,代码如下 % 平滑降噪 % FFT变换和小波变换 clc clf clear length_of_sig=128; x=linspace(0,2*pi,length_of_sig); % ...

  4. 【UOJ #279】【UTR #2】题目交流通道

    http://uoj.ac/problem/279 先判断答案为0的情况,\(d(i,i)\neq 0\),\(d(i,j)\neq d(j,i)\),\(d(i,j)>d(i,k)+d(k,j ...

  5. [UOJ409]Highway Tolls

    题意:交互题,给定一个简单无向图和$A,B(1\leq A\lt B)$,你可以对每条边指定其边权为$A$或$B$后通过交互库询问$S\rightarrow T$的最短路($S,T$在程序运行之前已经 ...

  6. 【最小割】BZOJ3438-小M的作物(Rank 2???!!!)(含新款Dinic模板)

    一开始被T掉了之后,才害怕地发现之前写的Dinic基本上都是错的??!!!正确的写在注释里了,注意一下(;3<)馬鹿やろ 一个丧心病狂的优化前后效率对比:

  7. GCDAsyncSocket类库,IOS下TCP通讯使用心得

    关于在IOS下使用Socket进行通讯的技术文章也许诺很久了,今日又是一个还债的日子,网上虽然很多介绍过AsyncSocket或GCDAsyncSocket的文章,但其实就那么一两篇大部分都是转载,于 ...

  8. Android中Acition和Category常量表

    Action Action常量 对应字符串 简单说明 ACTION_MAIN android.intent.action.MAIN 应用程序入口 ACTION_VIEW android.intent. ...

  9. [转]spring的ParameterMethodNameResolver

    例1: ParameterMethodNameResolver,这个可以根据请求的参数来确定一个需要调用的方法.例如,http://www.sf.net/index.view?testParam=te ...

  10. CSS揭秘之多重边框&连续的图像边框

    1.多重边框 我们可以通过使用border-image来写一个多重边框,或使用多个元素来模拟多重边框,不过我们有更好的办法来制作一个多重边框,那就是使用box-shadow的第四个参数(称为扩张半径) ...