Categories: KnockoutJS

About KnockoutJS

Share

In this tutorial you will get the basic knowledge of KnockoutJS and how to use on programming.

Basically it is a JavaScript library based on MVVM pattern i.e. Model-View-View-Model by which developer build rich and responsive websites.

It separates the application model, view and view model.

It supports most of browsers i.e. Firefox 3.5+, IE 6+, Opera, Chrome, Safari.

Steve Sanderson, a Microsoft employee on July5, 2010 developed KnockoutJS and maintained as a open source project.

Abbreviation for KnockoutJS is KO.

Features of KnockoutJS:

  • Open source and free for use.
  • Extensible
  • Template
  • Automatic UI refreshing
  • Binding easily
  • Dependency tracking
  • Compatible with client or server side technologies
  • Small & lightweight

How to use:
Download production build of Knockout.js from:
http://knockoutjs.com/downloads/index.html

Read Also: KnockoutJS MVVM Application Framework

Now paste it in your webpage head tag as:
<script type=’text/javascript’ src=’knockout-3.3.0.js’></script>
or you can use KnockoutJS library from CDN:
<script src=”http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js” type=”text/javascript”></script>

Lets look a simple example:

<!DOCTYPE html>
 <head>
 <title>About KnockoutJS</title>
 <!-- We have added the KnockoutJS library-->
 <script src="http://ajax.aspnetcdn.com/ajax/knockout/knockout-3.1.0.js" type="text/javascript"></script>
 </head>
 <body>
 <!-- two input boxes First Name and Last Name initialized in model with "John" and "Doe" -->
 <p>First Name: <input data-bind="value: firstName" /></p>
 <p>Last Name: <input data-bind="value: lastName" /></p>
 <!-- get the value from model observable from input element -->
 <p>First Name: <strong data-bind="text: firstName">Hi</strong></p>
 <p>Second Name: <strong data-bind="text: lastName">There</strong></p>
 <p>Full Name: <strong data-bind="text: fullName"></strong></p>
 <script>
 function AppViewModel() {
 <!-- firstName and lastName refers to ViewModel variable. -->
 <!-- ko.observable keeps an eye on value changes for updating ViewModel data -->
 this.firstName = ko.observable("John");
 this.lastName = ko.observable("Doe");
 <!-- this is computed function in viewmodel which concat two variable -->
 this.fullName = ko.computed(function() {
 return this.firstName() + " " + this.lastName();
 }, this);
 }
 ko.applyBindings(new AppViewModel());
 </script>
 </body>
 </html>
Published by
Jacob Frazier

Recent Posts

Overview of Reputation, Services, and Features of IplWin

IplWin stands as a reliable and enthralling platform for Indian punters, offering a captivating blend…

20 hours ago

Blogging Brilliance: Driving Traffic and Engagement with Quality Content

Introduction In today's online age, consumers are constantly bombarded with information. They crave valuable content…

1 day ago

How Assisted Living Gives Seniors More Freedom

In today’s rapidly aging society, finding a living situation that provides older adults with both…

1 day ago

Should you go for a Refurbished Mac?

If you wish to purchase a Mac, then it is strongly suggested to consider purchasing…

2 days ago

How Many Types of Bits are Used in Drilling Operations?

Oil drilling is a complex process that involves several components, including the drilling bit. The…

2 days ago

Best Watches to Match Your Business Look

Watches can be more than a fashion. They can be a symbol, especially in the…

3 days ago