views:

267

answers:

1

I have a page that has two parts that are slower loading. As they are already ASCXes, it would be trivial to render them asynchronously with jQuery.

That would mean, obviously, that the content in question isn't pumped to the browser on the first trip, but rather 200ms or so behind it.

Do the spiders evaluate the content that loads via script? Does it have an affect on ranking?

And if not, wouldn't that allow a malicious SEO abuser to climb the rankings by replacing content after loading the page (achieving higher rankings due to use of popular search terms in the first push by the browser, replacing the content with crap ads after the page loads via script)?

Finally, does it make any difference if the content being loaded is loaded into empty divs/elements versus those already populated by text? On first thought it seems more legit that a small placeholder div with not a lot in it is being used by a site developer to improve UX.

Cheers.

+3  A: 

Most crawlers do not know how to evaluate javascript. Even if they did, for a variety of reasons it'd be very difficult to evaluate more than the most simple of javascript. So if your content was not inlined in the page, it could very well affect the ranking.

As to the SEO abuser, this is possible, but so is putting un-seen content in a hidden div. Remember that a large amount of page ranking these days has nothing to do with the keywords in your page, but the relevance of your data, and links to your page. SEO is necessary, but the SEO abusers already have some methods like link trading, spamming links to blogs, and other fun stuff to increase their page ranking.

What you might have to do if you want your content spidered properly is use ajax for end-users for speed, and do the slow in-line page load for when you detect a crawler. This would necessitate keeping a list of user agents, and possibly increase your code size but it has the added feature that if you wanted, you could then support mobile/text browsers with no javascript capabilities too.

Crast