HTML5 web storage – offline storage solution for the web

Using HTML5 you can store data into user’s browser. Before HTML5, there was only one way to store data using cookies. This web storage stores data in key/value pair. You can use this technique to store data offline.

How to check that browser supports web storage?

if(typeof(Storage) !== “undefined”)
// Browser supports web storage. So you can use local and session storage
// Browser does not support web storage.

There are two types of the web storage

  1. Local Storage
  2. Session Storage

Local Storage

You can store data into local storage like

localStorage.key = “value”;

And you can retrieve it as

var localStorageValue = localStorage.key;

This storage is persisted even you closes and reopen the browser.

Session Storage

This storage is same as the local storage. One thing differs from local storage is that, the data will be lost if user closes the browser. So if you want to store data per session, go with this storage.

You can store data as follows

sessionStorage.key = “value”;

After you can retrieve as

var sessionStorageValue = sessionStorage.key;

How to check/debug web storage is working or not?

Developer tools of the browser will show data stored into the web storage. Following image taken from describes the where you can find the web storage.

HTML5 web storage


You can check your browser supports how many HTML5 features just opening into your browser.

Enrich user interface of your web application with Bootstrap UI framework

Bootstrap is very reach UI framework, flexible and responsive. It is made by Twitter and hosted on github.

You can find the more details at

Let’s start to integrate this framework into your web application.

Very first you need to download framework files from bootstrap website mentioned above. Download will contain ZIP file (bootstrap-x.x.x-dist.ZIP)

After extracting the downloaded ZIP file, you will get three folders:

  • css: This folder contains style sheets files for the bootstrap framework and theme
  • fonts: This folder contains necessary files for the fonts
  • js: This folder contains JavaScript files for bootstrap framework.

For the further process I have used Visual Studio to create and manage web application. You can use any editor instead of the Visual Studio.

In the Visual Studio go to the menu:  File -> New -> Project. It opens New Project dialog. Select ASP.NET Web Application and give the name for the solution.

Enrich user interface of your web application with Bootstrap UI frameworkClick on OK then Select Empty project type.

select empty project template

Click OK to create project.

You will see solution created as below.


Right click on ‘WebAppWithBootstrap’ the solution select Add then select HTML Page.

Solution2Give the name as index.html


Index.html file is created opened in editor.

Now add folder ‘Bootstrap’ by right-click on solution and choose Add and then New Folder.


Then create two folder called ‘css’ and ‘js’ inside the folder ‘Bootstrap’


Now copy the ‘bootstrap.min.css’ file from css file folder of the extracted Bootstrap zip file to the css folder of the solution. Also copy the ‘bootstrap.min.js’ JavaScript file from js folder of the extracted Bootstrap zip file to the js folder of the solution.


Now we need to give references of the added css and js file into index.html file as follows.


Here we have added meta tag with viewport and set content width=device-width. This made your page responsive.

We have done with the integration of Bootstrap framework with web application.

Now open the page into browser.


jQuery Mobile Introduction

Touch-Optimized Web Framework for Smartphones & Tablets

Recently I worked on mobile application based on HTML5 and JQuery. I have used jQuery mobile framework. It is very simple to learn and use, if you already know jQuery. You can find out more stuff from below site.

You can view documentation from below site. This site optimized to open in all mobile browsers.

You can download necessary files to use jQuery mobile from below site.

jQuery mobile also provide CDN-hosted versions. These are minified and compressed with host images.

You need to copy and paste following lines into your project to use jQuery mobile framework.

<link rel="stylesheet" href="" />
<script src=""></script>
<script src=""></script>

jQuery mobile supports theme based UI. This framework also provides default themes. You can create your own custom theme by theme roller.

Metro style context menu using JavaScript and CSS

What is context menu?

When you right click on browser window, browser will show you a menu containing some common functions.
See following image for reference.

Metro style context menu using JavaScript and CSS

If you want to build your own custom context menu, follow the easy steps below.

Step 1 – HTML

<div id="context-menu">
<li><a href="#">menu 1</a> </li>
<li><a href="#">menu 2</a> </li>
<li class="list-devider">
<hr />
<li><a href="#">menu 3</a> </li>
<li><a href="#">menu 4</a> </li>
<li><a href="#">menu 5</a> </li>
<li class="list-devider">
<hr />
<li><a href="#">menu 6</a> </li>
<li><a href="#">menu 7</a> </li>

Step 2 – CSS

Following is CSS declaration for above context menu structure. This will give metro style look to context menu.

z-index: 1000;
position: absolute;
border: solid 2px black;
background-color: white;
padding: 5px 0;
display: none;
} #
context-menu ol
padding: 0;
margin: 0;
list-style-type: none;
min-width: 130px;
width: auto;
max-width: 200px;
#context-menu ol li
margin: 0;
display: block;
list-style: none;
zoom: 0;
padding: 5px 5px;
#context-menu ol li:hover
background-color: #efefef;
#context-menu ol li:active
color: White;
background-color: #000;
#context-menu ol .list-devider
padding: 0px;
margin: 0px;
#context-menu ol .list-devider:hover
/*background-color: #efefef;*/
#context-menu ol .list-devider hr
margin: 2px 0px;
#context-menu ol li a
color: Black;
text-decoration: none;
display: block;
padding: 0px 5px;
#context-menu ol li a:active
color: White;

Step 3 – JavaScript

To enable context menu, write down following script.

$(document).ready(function () {
try {
$(document).bind("contextmenu", function (e) {
$("#context-menu").css({ top: e.pageY + "px", left: e.pageX + "px" }).show(100);
catch (err) {

Note: Above script require JQuery to be included in document.

In above script we have set context menu function to our custom function. This function will prevent default context menu of browser and
will show custom context menu.

Here we can add following function when user clicks on document, will hide context menu.

$(document).bind("click", function (event) {

look at the beautiful metro style context menu tested in IE9.

Metro style context menu using JavaScript and CSS

Enjoy JavaScript…