Hi Zakaluka,

WebSharper applications use various server- and client-side abstractions. Most typically, you will be developing what we call a sitelet - a composable server-side abstraction that tells the containing web server what requests are served and how.

The content you are serving from a sitelet for a particular request can be anything. You can of course serve HTML (say, using the server-side HTML4 and HTML5 combinators [IntelliFactory.Html.*]). In doing so, you often need to embed dynamic functionality, such as responding to button clicks or display dynamic web forms with complex client-side validation. These can be described using the client-side HTML combinators (IntelliFactory.WebSharper.Html.*) and embedded via special Web.Control types in the containing markup.

By default, any client-side functionality will use jQuery - and this dependency is injected automatically (as are all others if you use any WebSharper extension). Relying on jQuery works out a lot of the complexity of making your applications cross-browser compatible, but ultimately it's up to you to construct the correct HTML that you are serving and creating dynamically.

By on 3/13/2012 8:26 PM ()

Hi Adam,

Thank you for your reply. I guess I shouldn't have mentioned sitelets, I picked that up from the templates.

The reason I'm asking this question is that FPish, which is pretty much marketed as the stereotypical "large-scale application" for WebSharper, doesn't seem to work right in any browsers other than the latest ones. However, I'm not sure if this is on purpose or not.

On IE7, the language menus (at the top) are borked. None of the mobile browsers or older browsers (including IE7) show the search boxes or the reply/edit/change tags buttons (under each thread comment). So, I assumed that during the conversion, WebSharper is utilizing some library or technology that doesn't perform well on older clients. From what I understand, this shouldn't be the case because it uses jQuery, which is famous for working on every browser under the sun.

Like I said, I'd really like to use WebSharper, but cross-browser compatibility and usability on older browsers is a huge issue. I guess I'll just have to try and see if some of the samples can run on older browsers (or write a simple one myself).



By on 3/14/2012 7:48 PM ()

Note that these are CSS issues and are unrelated to WebSharper. We at some point contemplated about composing CSS programmatically to ensure robustness, but it's just too hard/complex if not impossible given the vast variance on what browsers support and how.

By on 3/14/2012 8:20 PM ()


That's good to know. I'm continuing to dig into WebSharper. I'm sure I'll be posting here often as I come up with more questions.



By on 3/15/2012 7:04 PM ()

Sitelets are a server-side abstraction, and require nothing from the client. They can manage any content you'd like to use: HTML pages, RSS feeds, images - whatever.

However, if you do choose to use HTML (which is quite probable), you'd quite possibly use Formlets which require JavaScript and jQuery - completely reasonable requirements.

WebSharper supports HTML5, if you'd like, but then the clients will be required to use a browser with HTML5 support. All HTML5 capabilities are in modules named HTML5 (there are several, for different purposes), so if you are afraid of HTML5 - don't write "HTML5" in your source code :)

By on 3/13/2012 12:43 AM ()

Hi Ramon,

Thanks for your reply. I agree that HTML5 features would greatly reduce backwards compatibility. However, it seems that even the basic WebSharper samples don't work correctly in browsers as "old" (or recent) as IE7. That's the problem I'm trying to get around now.

As I mentioned below, even things like search boxes don't appear on the latest mobile browsers or, in my case, IE7.

I don't know if it's just the specific browsers I'm using (I seriously don't think every browser I've tried on is messed up) or some other issue, but I guess I'll just have to find the time to get my own sample up to test it out.



By on 3/14/2012 7:58 PM ()

It's not uncommon to require modern browsers - as Google to dump support for Microsoft's IE7, and many others show. Whether FPish works better or not on older browser is a matter of tuning the XML template and the CSS we are using, neither of which is related to WebSharper.

Now that this came up, we will eventually get to giving FPish a bit of a facelift, and with that extend browser compatibility.

By on 3/14/2012 8:35 PM ()

Hi Adam,

That's very true. Unfortunately, unlike Google I can't afford to alienate users on the basis of an outdated browser.

My ultimate goal is similar to that of jQuery, support all "modern" browsers, even those being used past EOL. Luckily, based on what you've said, using more common CSS constructs and conditional compilation / style application should alleviate a lot of the issues.

Thanks for all your help,


By on 3/17/2012 7:32 PM ()
IntelliFactory Offices Copyright (c) 2011-2012 IntelliFactory. All rights reserved.
Home | Products | Consulting | Trainings | Blogs | Jobs | Contact Us | Terms of Use | Privacy Policy | Cookie Policy
Built with WebSharper