asp.net IFrame 滚动条推到顶部。 .

Posted

技术标签:

【中文标题】asp.net IFrame 滚动条推到顶部。 .【英文标题】:asp.net IFrame scroll bar push to top . . 【发布时间】:2010-09-21 01:42:35 【问题描述】:

这是一个棘手的问题。 .

我有一个网页(称为 PageA),它有一个标题,然后只包含一个 iframe。让我们在 iframe PageB 中调用页面。 PageB 只是有一堆缩略图,但是有很多,所以你必须在 PageA 上向下滚动才能查看它们。

当我向下滚动到 pageB 的底部并单击缩略图时,它看起来像是将我带到了一个空白页面。实际发生的情况是它会显示图像,但由于只是图像的页面高度要短得多,因此滚动条会停留在同一位置并且不会针对它进行调整。我必须向上滚动到页面顶部才能查看图片。

当我点击 iframe 内页面上的链接时,外部页面滚动条会回到顶部吗

谢谢, 啊

【问题讨论】:

@mek 我重新标记为 javascripthtml,因为无论您的服务器端实现语言是什么,这都是一个常见问题 【参考方案1】:

@mek 在尝试了各种方法后,我找到的最佳解决方案是:

在外页,定义一个滚动功能:

<script type="text/javascript">
  function gotop() 
    scroll(0,0);
   
</script>

然后,当您定义 iframe 时,设置一个 onload 处理程序(每次加载 iframe 源时触发,即每当您导航到 iframe 中的新页面时)

<iframe id="myframe" 
    onload="try  gotop()  catch (e) " 
    src="http://yourframesource"
     
    scrolling="auto" margin margin 
    frameborder="0" vspace="0" hspace="0" >
</iframe>

这种方法的好处是它意味着您不需要对 iframe 中包含的页面进行任何更改(并且 iframe 内容可以很高兴地位于另一个域中 - 没有跨站点脚本问题)。

【讨论】:

这对我有用。完美的解决方案,就像你说的那样,最好的事情是我不必从代码隐藏中强制“走到顶端”。它就是这么做的。【参考方案2】:

Javascript 是您最好的选择。您可以使用scroll() method 向上滚动到 IFRAME 的顶部。在正文加载中添加一个 javascript 处理程序,以便每次单击缩略图时,调用一个调用 scroll() 的函数来向上滚动。

【讨论】:

【参考方案3】:

我花了相当多的时间试图弄清楚如何从我正在调用的 php 代码中(从父 ASP.NET 页面中)滚动到 iframe 的顶部。我从来没有想过我可以使用相同的 javascript 滚动到顶部,但在 iframe 的 onload 事件中。谢谢!

【讨论】:

以上是关于asp.net IFrame 滚动条推到顶部。 .的主要内容,如果未能解决你的问题,请参考以下文章

当 iframe 的表单验证失败时,让父页面滚动到顶部

UITableView deleterows 滚动到顶部

iOS 浏览器 - 使用 JavaScript 更改 css 或内容时 iFrame 跳转到顶部

scss 滚动时的UI到顶部/页面到顶部按钮

当导航条滚动到顶部时固定到顶部

iOS滚动视图禁用自动滚动到顶部