2

在寻找这个问题的答案时,我一直在寻找有关如何删除滚动条的答案。这并不能完全解决我的问题。我有一个 index.php 文件,我试图将它放入我网站上的 iframe 中。index.php 包含一个<div>带有 a<span>的文件。

<iframe src="index.php" scrolling="no" style="border:0px; height: 300px; width:158px;"></iframe>

但是,当我单击并拖动它<div>时,页面仍然滚动(水平)。我只能在 IE8 中看到这种情况。我已经在 Firefox 中进行了测试,但我没有看到它。如果客户在 iframe 中单击并拖动,有没有办法完全防止页面滚动?

我意识到这是一个边缘案例,在生产中可能不会发生很多,但我的 iframe 正在公司网页上,我想尽可能多地消除不良影响。

我可以在<iframe>标签和 index.php 中放置我想要的任何内容,但 iframe 所在页面上的任何其他内容对我来说都是禁区。

Index.php 有以下代码:

<div id="link"><span class="link"></span></div>

我设置了一个样式表,使用background-image. 背景图像高 60 像素,但在任何给定时间仅显示 30 像素,具体取决于跨度是否处于焦点或悬停状态。

4

1 回答 1

1

您需要有效地取消滚动。而且由于“onscroll”事件是不可取消的,下一个最好的事情是重置滚动位置。将此添加到您的 index.php 中(例如添加到 <head> 部分):

<script>
        window.onscroll = function () {
            window.scrollTo(0,0)
        }
</script>

在任何滚动尝试(包括拖动滚动)时,它将重置滚动位置。您可能会注意到轻微的跳跃,但页面不会滚动。

于 2013-04-30T21:39:17.030 回答