用JavaScript操纵HTML内容是不好的做法吗?

时间:2011-10-17 06:03:09

标签: javascript jquery

我目前正在开展一个使用半生不熟的CMS的项目。由CMS控制的站点部分在CMS后端中不可编辑。因此,提供CMS的公司建议我们使用jQuery来操作这些页面上的HTML内容。

对我而言,这是一个坏主意 - 主要是因为我努力分离内容,设计&功能。

这是一种过去很好用的哲学 - 我发现如果我遵循这些原则,将网站版本化到各种平台并获得一个好的,可访问的网站会更容易。

但我正在寻找更多的弹药,例如这对SEO有什么作用? Google的蜘蛛可以访问被操纵的内容吗?

还有其他原因导致使用JavaScript操作HTML内容是不好的做法吗?

4 个答案:

答案 0 :(得分:3)

我绝对同意这不是最好的主意。

通常搜索引擎不会执行Javascript并会读取预先更改的代码。

答案 1 :(得分:1)

我不确定我是否同意使用Javascript修改页面是一个坏主意。 Javascript正在进行现在正是如此(包括标准化的DOM)。

当然有些事情在Javascript中没有意义,比如完全验证(有一些预验证逻辑可以提供更好的用户体验,但服务器端必须始终执行所有检查) “操纵HTML代码”本身并不错。

显然,它依赖于您需要执行的具体编辑。例如,如果正在调整CSS,那么我同意用Javascript执行此操作,因为CMS不允许它作为解决方案闻起来很糟糕(例如,如果它们在CMS的下一次更新中触及页面生成,它将会中断)。 p>

答案 2 :(得分:1)

  • jQuery基本上是一个DOM / HTML操作库。大多数时候,当你使用jQuery时,你正在操纵DOM。
  • 理想情况下,此类操作仅应用于逐步增强用户体验。如果可能的话,用户体验应优雅地降级,以防他们不能或选择不运行您的Javascript。

我认为你必须问自己,

  1. 我使用jQuery / Javascript作为传递网站内容的主要方式吗?
  2. 关闭Javascript,我的网站是否至少处于可用性的最低水平?
  3. 如果第一个问题的答案是肯定的,而第二个问题的答案是否定的,那么我会回到绘图板。

答案 3 :(得分:0)

走路是一条非常好的路线,但我不会说操纵HTML内容(我的意思是布局和样式)是一种不好的做法。这是今天网络的MO,否则你的动态内容,所有这些滑块和旋转木马等等,仅限于CSS操作。

您的问题与使用JS操纵HTML有所不同。您的问题是您操纵了第三方 HTML内容。如果明天他们将<span>更改为<div>或将一个ID更改为另一个 - 您的JS可能会变得无用。

在你的情况下 - 我会做各种各样的JS操作,但我不会把它建立在一些更高的主体上。