Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8105081
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 6, 20262026-06-06T00:04:30+00:00 2026-06-06T00:04:30+00:00

I have been reading about making ajax heavy applications more search engine friendly: https://developers.google.com/webmasters/ajax-crawling/docs/getting-started

  • 0

I have been reading about making ajax heavy applications more search engine friendly:
https://developers.google.com/webmasters/ajax-crawling/docs/getting-started

One of the solutions I have delivered recently relies heavily upon cross domain javascript widgets. A website that integrates this solution would include a piece of javascript in their website. For example:

<script type="text/javascript">
  var _lw = _lw || {};
  _lw._setAccount = ' 00000000-0000-0000-0000-000000000000' ;
  _lw._widgetType = '_widgetName';
  _lw._options = {};  

  (function() {
    var scriptsrc = document.createElement('script'); 
    scriptsrc.type = 'text/javascript'; 
    scriptsrc.async = true;
    scriptsrc.src = 'http://hostname/Application/js';

    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(scriptsrc, s);
  })();
</script>]

<div id="widget-container"></div>

This request appends to the dom a jQuery wrapper along with relevant application URL’s that the widget will use. Note, the source of this piece of javascript is simply an asp.net mvc content result which outputs the relevant content:

[HttpGet]
[ActionName("js")]
public ContentResult RenderJavascript()
{
      // java script urls & jquery wrapper are output
}

Now that the necessary url’s are available, the jQuery wrapper that was just appended kicks in and fires off a request to the server with the account information, the widget type and any relevant options. ASP.net MVC is simply acting as a content generator and it returns a JSONP result where the generated content is appended into the sites content container.

function loadWidget() {
    var jsonpUrl = _opts._widgetUrl + _lw._setAccount;
    jQuery.getJSON(jsonpUrl, _lw._options, function (data) {
        jQuery('#widget-container').html(data.html);
    });
}

The more I read on making this process more search engine friendly I’m at a loss of where to start. Generating the required HTML snapshot is easy enough however, how would I signify to google that a link should be crawled?

Another option that seemed somewhat promising was the section on how to handle pages without hash fragments. This would be accomplished by adding a meta tag that is making use of the javascript widgets.

<meta name="fragment" content="!">

However, the problem now is in the fact that this is a cross domain request and again wont’ lead anywhere.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-06T00:04:31+00:00Added an answer on June 6, 2026 at 12:04 am

    This is a tricky one. There’s evidence that Google does crawl JavaScript (it doesn’t execute it, per se, the same way your browser does, but it will at least look for URLs in JavaScript, much like it does in Flash, Word, etc. documents. So there’s a chance you don’t need to do anything if Google spots 'http://hostname/Application/js' in your JavaScript and deigns to follow it, and then parse URLs out of the JavaScript returned.

    If you want a more concrete solution, perhaps modify your code like this:

    <div id="widget-container"><iframe src="http://hostname/Application/iframe"></div>
    

    OR:

    <div id="widget-container"><a href="http://hostname/Application/links"></div>
    

    When your widget’s JavaScript is executed by a browser you can replace the contents of #widget-container with what you’d normally replace it with (you could also add a style="visibility:invisible;" attribute but I suspect Google punishes “hidden” content wherever possible for obvious reasons), but when the Googlebot stops by it’ll crawl the iframe/link. On the server side you can have those URLs generate the same list of links you had in JavaScript, but in easily-digested HTML.

    An additional option that might make Googlebot even happier is using a Schema.org object like WebPageElement, e.g.:

    <div id="widget-container" itemscope itemtype="http://schema.org/SiteNavigationElement">
      <link itemprop="url" href="http://hostname/Application/links">
    </div>
    

    …and then have the target page also contain Schema.org declarations. I’m not sure if you’d reap any real benefit from this over one of the previous forms, but metadata is a love note to the future.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Recently I have been reading more and more about people using custom attributes in
Have been reading about async and tasks and been attempting to convert the CopyFileEx
I have been reading about MVP, MVVM and have used asp.net MVC in couple
I have been reading about collision detection in games on stackoverflow and other sites.
I have been reading about the continuation passing style programming technique (C# 3.0 implementation).
I have been reading about Quicksort and found that sometimes it' s referred to
I have been reading about Scala for a while and even wrote some small
i have been reading about multiple inheritance What is the exact problem with multiple
I have been reading about unsafePerformIO lately, and I would like to ask you
I am completely new to HTML5 and have been reading about it for the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.