【问题标题】:multi directional scrolling between html documentshtml文档之间的多向滚动
【发布时间】:2011-05-06 05:53:22
【问题描述】:

我一直在玩 jquery 的多向滚动。我发现这是一种浏览网站的绝佳方式,但它有一个缺点。浏览器需要一次加载所有网站内容,因为它在一个 html 文档中。

现在我一直在寻找一种在不同 html 文档之间进行这种出色滚动的方法,但没有成功。因此,我想知道是否可以在 html 文档之间滚动,而不是在 div 之间滚动。这可能吗?

【问题讨论】:

    标签: javascript jquery html scroll


    【解决方案1】:

    这在客户端和服务器之间的请求/响应事务的正常意义上是不可能的 - 只有浏览器才能在此页面更改级别上对更改进行动画处理。还有一些其他选择:

    1. 当您滚动到一侧时,使用 JS 将浏览器(带有一些哈希标签或信息查询字符串)重定向到下一页。当下一页加载时,您应用一个动画,使其看起来像是被滚动到的。这具有令人讨厌的缺点,即在页面转换之间存在延迟。
    2. 使用 AJAX,因此,当您滚动时,内容会异步加载到页面中。然后,一旦加载,您就不必担心它。这类似于在图像搜索中滚动浏览图像时 Google 或 Bing 所做的。这具有仅加载您需要的内容的优点。

    对于 AJAX 加载,jQuery 的 AJAX 方法非常有用:http://api.jquery.com/jQuery.ajax/ 只需传入一个 URL、您想要的任何信息和一个回调。在回调中,将响应数据加载到空的 div 或任何地方。 像这个例子一样,取自 jQuery 的网站:

        $.ajax({
      url: 'ajax/test.html',
      success: function(data) {
        $('.result').html(data);
        alert('Load was performed.');
      }
    });
    

    【讨论】:

    • 我对 AJAX 的经验为零。有关如何完成此任务的任何建议?
    • 看来我必须坐下来仔细阅读所有这些内容,但您确定它也适用于我拥有的滚动功能吗?那么当点击链接时,jquery 会滚动到 div 并将数据加载到其中?
    • 如果您的链接自动滚动到 div,那么可以。无论 jQuery 的 onscroll 事件是什么,都应该选择自动滚动。您所要做的就是确定用户滚动到的位置并为适当的 div 加载内容。
    • 我会调查的。希望我能弄清楚。 (刚刚开始使用 jquery)感谢您的帮助和您的时间!
    【解决方案2】:

    您可以通过两种方式来完成这项工作。

    • 使用 iframe。这显然不是最佳选择。
    • 二是让DIV中的所有链接都使用ajax,将内容加载到DIV中。基本上,将所有链接修改为实际上不去任何地方,而是在页面上动态加载到相应的 DIV 中。

    【讨论】:

      【解决方案3】:

      可以,如果您将其他 html 页面预加载到 div 或 iframe(例如)。

      【讨论】:

        猜你喜欢
        • 2021-05-16
        • 1970-01-01
        • 2014-06-23
        • 2021-10-10
        • 1970-01-01
        • 2020-09-16
        • 1970-01-01
        • 2011-10-05
        • 2016-06-19
        相关资源
        最近更新 更多