0

我不确定我是否正确地问了这个问题,但请听我说...

在我的主导航中,我通过fancybox.ajax 调用我的一些链接,然后显示一个单独的页面(即单击标题为“INFO”的链接会在Fancybox 中打开info.php)。

这是有效的,但我也看到人们使用隐藏 div 的示例。

这个问题很有帮助,从 SEO 的角度解释了一些事情,并让我重新思考了我的结构。问题是我为什么要将我的数据包含在单独的页面而不是隐藏的 div 中,它给我带来了什么好处?我会注意到我目前正在使用单独的页面,因为我认为这是一个很好的做法,但是在阅读了那个问题之后,我已经转向了。

编辑:我明白为什么我会使用一个没有模态的单独页面……但我特别问的是不要使用带有模态框的隐藏 div

4

2 回答 2

1

AJAX 模态的案例

优点

  1. 在某些设置中更易于管理和组织
  2. 标记很干净
  3. 非常适合处理大量需要时间加载的数据。以这种方式延迟加载使应用程序感觉响应。

缺点

  1. Google 不会抓取内容(在某些情况下可能是专业人士)
  2. 与隐藏的 div 相比,渲染速度较慢

在大多数情况下,您需要隐藏的 div。如果没有,一个动态呈现内容的函数。

于 2012-10-15T16:12:40.880 回答
1

如果您通过链接调用这些外部页面,那么无论链接是否在模态框中打开,Google 都会跟踪这些链接。如果您禁用了 javascript,这些页面仍然会打开。所以

<a class="fancybox" href="info.php" rel="help">INFO</a>

... 从 SEO 的角度来看,这是一个完美的有效结构。如何在同一窗口、新选项卡或模式窗口中向访问者显示信息是一个演示问题。

奇怪的是,您可以<div>在模态窗口中隐藏和打开此类内容,但正如@zachary 所提到的,隐藏内容可能会影响页面加载的性能。

请注意,在这种情况下,我们谈论的是在模式框中显示“链接”内容,这与通过任何 ajax 方法(例如 jQuery.load()$.ajax()例如)动态拉取内容不同......从 SEO 的角度来看,这肯定会产生影响因为如果访问者禁用了 javascript,Google 将看不到内容,并且内容实际上根本不会显示。

于 2012-10-15T19:31:21.790 回答