【问题标题】:Loading HTML into div - unusual issue [closed]将 HTML 加载到 div 中 - 不寻常的问题 [关闭]
【发布时间】:2013-05-12 14:45:20
【问题描述】:

我为朋友创建的网站有一个不寻常的问题。

我创建了 index.html,其左侧边栏下方的链接保持不变。当您单击一个链接时,会在页面中心的主 div 内调用一个外部 HTML 文件。

这很好用,但有一个小问题(这实际上是一个烦人的问题)!

如果您点击第一个链接,例如“产品”,您可以很好地从左侧一直滚动到右侧到最后一张图片。如果您然后单击“时尚”,则会调用另一个 HTML 文件,但它会在您从“产品”离开的阶段调用它,即一直到右侧,而不是在开始时。

我基本上需要在每次点击链接时强制 HTML 在开头调用页面。这是我的网络链接,您可以查看我在说什么...

http://www.hannahdakin.co.uk/betasite

附:在论坛上查找后,我找不到其他有类似问题的人,但可能有一个我不熟悉的术语。

如果有人能提供帮助,我将永远感激不尽!

【问题讨论】:

  • 欢迎来到 Stack Overflow。请尝试直接在您的问题中显示相关代码。 (如果您要提供指向外部网站的 URL,至少要使其可点击...)
  • 欢迎来到stackoverflow! Please post actual code to your specific problem and not a link to a site. 我还建议您阅读 FAQ 以帮助您尽快获得答案。
  • 另外,这个问题也没有什么异常。您让用户滚动容器,并更改容器的内容。为什么容器在内容发生变化时要自行滚动到某个地方?它不应该。因为你从来没有要求它。这是一个误导性的标题,在 SO 中并没有错。

标签: jquery html scroll


【解决方案1】:

您需要将 jQuery .scrollLeft(0) 命令应用于您的页面主体,以在每次点击时重置水平位置。例如:

$('#products').click(function(){
    $('.slider').load("allimages.html #products2");
    $('body').scrollLeft(0);
});

这必须在页面主体上完成,因为您的滚动条被锚定到整个页面而不是容器。

您需要为每个菜单点击事件复制此内容。

【讨论】:

  • 谢谢,这也有效!
【解决方案2】:

您可以使用.scrollLeft(0) 重置<div> 中的水平滚动位置。

【讨论】:

  • 抱歉,我没有将实际代码放入其中,我以后一定会这样做。我实际上意识到问题出在 html 文档中。我将所有 div id 都放在一个 html 文件中(为了方便),但是当我制作单独的 html 时,它们都在一开始就加载了......但是现在我会试试这个 scrollLeft(0)!
猜你喜欢
  • 1970-01-01
  • 2015-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-18
  • 2012-01-19
  • 2012-06-23
  • 1970-01-01
相关资源
最近更新 更多