0

我似乎无法解决这个问题,如果可以做到,我会非常高兴。我正在为朋友的电影公司建立一个网站,他要求在每个特定电影网站的顶部有一个标题,该标题可以链接到带有电影名称的其他电影网站。每个电影网站上的标题完全相同,位置准确。每个电影网站也驻留在不同的 URL 上,而不是同一 URL 中的子目录。

现在他还要求在单击其他站点时不要刷新标题。我想知道这是否可能,我完全愿意让所有网站都驻留在不同目录中的同一 URL 上。他还希望每个站点的 URL 都是可见的,因此不仅要为同一站点中的每个站点加载内容,而且浏览器中的 URL 也不会发生变化。

公司网址是 www.breakwaterstudios.com

第一部电影的网址是 www.dinnerwithfred.com

第二部电影的网址是 www.inkandpapermovie.com

(我还没有在网站上集成新的标题)。

但是,如果这样做的唯一方法是让 URL 成为

www.breakwaterstudios.com/dinnerwithfred

www.breakwaterstudios.com/inkandpapermovie

然后让各个 URL 重定向到那些很好的子目录。

我能想到在单击每个标题按钮时不重新加载页面的唯一方法是

1) 将所有电影站点的整体编码到每个单独的电影站点中,并让每个单独的电影站点首先加载其各自的站点元素(隐藏其他站点的元素)。然而,这将需要某种 javascript/Ajax URL 更改/重写代码或其他东西来掩盖这样一个事实,即每个电影站点实际上都被编码到同一个站点中,并且它只是使用 jquery .show 和 .hide 命令重新加载。将所有其他网站的内容加载到同一个 index.html 文件中可能需要很长时间。

2) 使用 jquery .load 或 iframes 甚至在单击标题按钮时动态加载标题下方的每个站点。但是,URL 需要像数字 1 一样重写。

3)由于标题 div 将在所有站点上处于相同位置,并且如果使其工作的唯一方法是重新加载到页面,当另一个电影站点在单独或相同的 URL 上加载时,标题不会闪烁. 让标题看起来没有重新加载,而实际上它是在单独的网站上加载的。当点击另一个站点时,标题会消失并重新出现在几分之一秒的时间里。

看起来困难的部分是整个 URL 更改。

我想我得到的是在每个站点上保留标题而不在访问每个站点时重新加载标题的可能性。我看到 Facebook 可以做到这一点,但它都在 facebook.com 的同一个 URL 中。我进行了研究,发现由于潜在的安全风险/屏蔽/欺诈/等,跨多个 URL 可能是不可能的。

jquery .load 函数和 iframe 可以工作,但是 URL 需要更改,如果整个 URL 不能从 Dinnerwithfred.com 更改为 inkandpapermovie.com,那么至少在浏览器窗口中更改子目录.

任何帮助将不胜感激!!!谢谢!!!

  • 狄龙
4

1 回答 1

1

在现代浏览器上,您可以使用 HTML5 历史 API:

我认为旧浏览器也有一些技巧。但正如你所说,我认为它只适用于同一个域。因此,您将在这里遇到子目录 url。至于加载页面本身,我认为 iFrames 确实是您最好的选择。

您也可以使用http://simplehtmldom.sourceforge.net/获取页面,例如,如果您真的想将页面集成到您的页面中。尽管正确提取内容可能并不容易。这也可能存在法律问题(因为您不拥有其他网站,是吗?)

于 2012-08-11T19:09:54.587 回答