Is it possible to change Microdata itemprop with j

2019-05-30 03:30发布

Here is the code that shows success in console log but fails when tested with Google's Structured Data Testing Tool or with G+ share button. The original values remain. In this case "jack" never updates to "jill".

var newName= "jill"
$("h1").attr('itemprop','name').html(newName);

Here is the Microdata:

<body itemscope itemtype="http://schema.org/Blog">

<div style="display:none;"> 
<h1 itemprop="name">jack</h1>
<img itemprop="image" src="http://somehewhere.com/something.png" />
<p itemprop="description">some text</p>

</div>

As you can see, just trying to change the value of "jack" to "jill".

3条回答
干净又极端
2楼-- · 2019-05-30 03:49

The html() method cannot be used on the itemprop attribute. You need to apply it to just the h1 tag instead:

$("h1[itemprop=name]").html(newName);

or since newName is simple text:

$("h1[itemprop=name]").text(newName);
查看更多
地球回转人心会变
3楼-- · 2019-05-30 03:53

Changing microdata values was no sense, since as dwtm.ts said, bots don't execute javascript and parse only source code downloaded directly when they get the pages. You should use "fetch as googlebot" test tool from GWT to check how search bots "read" your page.

查看更多
不美不萌又怎样
4楼-- · 2019-05-30 04:07

That's because GoogleBot (and all the others, for that matter) doesn't execute (all) javascript. You won't have any success setting or changing microdata properties by any client side script.

查看更多
登录 后发表回答