【发布时间】:2019-06-29 17:59:35
【问题描述】:
我的 Web 应用程序在页面结构发生变化的地方使用页面重新加载。
对于用户发起的内容更改,全部由 Ajax 处理。
但是,我计划删除所有重新加载的页面,并用 ajax 调用替换它们,这些调用只是使用用于 body 和 head 标签的 innerHTML 更新页面。
为此,我知道必须手动调用通常由 onload 事件调用的函数。
完成后,我将拥有一个完整的 ajax 应用程序。我的问题是,现在是这种标准做法吗....我看到很多应用程序在其中执行某些操作并重新加载整个页面,甚至重新加载常见元素。
例如,访问 Apple.com 并点击您看到“Store”的第一个按钮...您将看到整个页面重新加载,即使未更改的菜单栏重新加载也会浪费带宽..
因为我没有看到其他人使用完整的 ajax 解决方案...我想知道我是否走错了路。
我的问题?
是一个完整的基于 ajax 的 Web 应用程序的最佳实践吗? (当然不支持文件上传,省略这个,是不是最好的做法)。
如果是这样,为什么大网站不这样做?我看到很少有网站实际上使用 ajax 而不是页面重新加载。
【问题讨论】:
-
在 ajax 中做所有事情的最大缺点之一是在搜索引擎中失败。搜索引擎会抓取您的页面,以寻找他们可以关注到网站上其他页面的链接。如果您在 ajax 中做所有事情,您将没有任何链接,并且搜索引擎可能会将您的网站视为一个页面,从而显着降低您的网站出现在搜索中的机会。
-
这不会改变任何链接..如果用户点击重新加载按钮,我仍然需要可用的静态版本...会有静态页面..和 ajax 生成的页面
标签: php javascript ajax