spacer

Webref WebRef   Sitemap · Experts · Tools · Services · Newsletters · About i.com

home / experts / javascript / column77


Netscape 6, Part VI: Object-Oriented DOCJSLIB 1.2

Developer News
OpenOffice 3.2 Lands Amid Critical Changes
Red Hat, IBM Firmly in KVM Virtualization Camp
Red Hat Talks Up Open Source Cloud Plans

Creating a Class on the Fly

The function createTheProperSubClass() creates on the fly the proper browser-dependent object. The function actually defines a class with one property, className, and one method, getTheProperSubClass. The property className depends on the browser type:

var browserType = new browserSniffer();
  if (browserType.ie4) {
    this.className = "docjslibIE4SubClass";
  }
  else if (browserType.ie5) {
    this.className = "docjslibIE5SubClass";
  }
  else if (browserType.ns4) {
    this.className = "docjslibNS4SubClass";
  }
  else if (browserType.ns6) {
    this.className = "docjslibNS6SubClass";
  }

We then define the method getTheProperSubClass():

this.getTheProperSubClass = getTheProperSubClassMethod;
  
  function getTheProperSubClassMethod() {
    // example: return new docjslibIE5SubClass();
	return eval('new ' + this.className + '()');
  }

Notice that the ultimate impact of createTheProperSubClass() function is to generate a string for a new object. For IE5, it should be:

new docjslibIE5SubClass();

For NS6, it should be:

new docjslibNS6SubClass();

We'll show you later in this column how to assign a variable name to this new object.

Next: How to write a browser-independent superclass

http://www.internet.com


The Network for Technology Professionals

Search:

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers

webref The latest from WebReference.com Browse >
Search Engine Optimization: Selecting and Embedding Keywords · Are Google's Language Translation Web Services Ready for Prime Time? · Installing and Using Meeplace, the Business Review CMS
Sitemap · Experts · Tools · Services · Email a Colleague · Contact FREE Newsletters 
 The latest from internet.com
IBM DB2 10 for z/OS: Justifying the Upgrade · Living La Vida Colo: Choosing the Right Colocation Facility · FTC Concerns over Social Media Privacy Linger


Produced by Yehuda Shiran and Tomer Shiran
All Rights Reserved. Legal Notices.
Created: February 12, 2001
Revised: February 12, 2001

URL: http://www.webreference.com/js/column77/6.html