.replaceWith()函数会改变搜索引擎看到的代码吗?

时间:2013-12-20 15:53:27

标签: javascript jquery seo bigcommerce

我设法修改某些H1的内容,因为我不希望它们从全局变量返回值。我使用了代码;

<script type="text/javascript">
$(document).ready(function() {
$("H1").filter(function() {  return $(this).text() === "Oak"; }).replaceWith('<H1>Solid Oak Furniture</H1>');
$("H1:contains('Countryside Oak')").replaceWith('<H1>Countryside Oak Furniture</H1>');  
});    
</script>

我的问题是,当我查看来源时,会显示“旧”代码。

实施例。它不会显示<H1>Solid Oak Furniture</H1>,而是显示<H1>Oak</H1>

但如果我使用,则检查元素,它会显示新代码<H1>Solid Oak Furniture</H1>

那么实际上当前的代码是什么?

1 个答案:

答案 0 :(得分:2)

当您查看页面的源时,它通常是Web服务器在页面加载时返回的原始文本。在客户端执行的对DOM的任何操作都不会被反映出来。

大多数现代元素检查员都能正确反映JavaScript等的更新和操作。不用担心,正确的HTML内容正如您所期望的那样(即<H1>Solid Oak Furniture</H1>)。

有人说过,因为JavaScript(以及jQuery)是在客户端执行的,所以对DOM的修改通常不会包含在搜索引擎结果中,因为它们的蜘蛛通常不包含JavaScript引擎。如果您需要为了SEO而修改DOM,请使用PHP或手动更改HTML并重新上传到Web服务器。