是否可以通过JS在页面上附加HTML?

问题描述:

我很好奇,知道是否可以通过函数从文件服务器上远程上传或引用.html文档。我已经发现如何通过onload函数实现CSS & JS,但不是HTML。 。我将通过这个对CMS,我每天都在使用,限制我的页面定制..是否可以通过JS在页面上附加HTML?

实施JS例如:

<img style="display: none;" src="IMAGE_NEEDED_FOR_ONLOAD_IMPLEMENTATION" onload="var body=document.getElementsByTagName('body')[0]; var script=document.createElement('script'); script.type='text/javascript'; script.src='JAVASCRIPT_FILE_GOES_HERE'; body.appendChild(script);"> 

有人碰巧有一个线索或有这方面的经验? 我不想使用iFrame。 另外,这会伤害SEO吗?

+2

你想“通过javascript onload函数从文件服务器远程上传或引用.html文档”?你能否对此进行重新说明,以便更容易理解你想达到的目标? – Ma3x

+0

我编辑了原帖。请参阅上文:) – Raylon

+0

您可以使用AJAX获取另一个HTML文档,然后指定'element.innerHTML'来更新当前页面。 – Barmar

我相信你想要做的就是对该HTML文件进行AJAX调用。请阅读Getting started with AJAX

接下来您需要做的是将结果添加到您的页面,而不是body.appendChild(script);这次,但与此AJAX HTML injection答案中描述的过程。

编辑: 对于SEO,这曾经是一个明确的“是的,这是有问题的”作为搜索引擎的爬虫没有启用JavaScript但随后在去年谷歌开始让JS在它的爬虫,这是一件好事,但也使这个问题更加混乱。 This article可能已过时,但它贯穿了一些不确定性。我想说,如果你认为这可能是一个问题,你应该更深入地考虑progressive enhancement。或者你可以继续,在客户端实施,在一段时间后衡量搜索引擎优化的影响,并评估是否值得更改实施。

+0

你知道吗如果Ajax请求有任何SEO价值? – Raylon

+0

@Raylon编辑包含SEO答案。 – shariffy