Wednesday, February 11, 2009

sitemap

Site Map


Homepage




Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG: November 2008
Shariff's BLOG
Shariff's BLOG: October 2008
Shariff's BLOG
Shariff's BLOG: September 2008
Shariff's BLOG
Shariff's BLOG: August 2008
Shariff's BLOG
Shariff's BLOG: July 2008
Shariff's BLOG
Shariff's BLOG: June 2008
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG: November 2008
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG
Shariff's BLOG: September 2008
Shariff's BLOG: September 2008


Shariff's BLOG: Steps for Installing ColdFusion
Shariff's BLOG: Resolving issues in sql server & dream weaver
Shariff's BLOG: CFCs in Fusebox
Shariff's BLOG: ColdFusion Interview Questions
Shariff's BLOG: A CAPTCHA Server Control for ASP.NET
Shariff's BLOG: FEATURES OF A GOOD CONTENT MANAGEMENT SYSTEM
Shariff's BLOG: Tags Used in CFML
Shariff's BLOG: Thoughts On The CFML Language Advisory Committee
Shariff's BLOG: 50 JavaScript Interview Questions
Shariff's BLOG: Cool Features of Visual Studio 2008
Shariff's BLOG: Visual Studio 2005 certification series MCTS and MCPD
Shariff's BLOG: Download Asp.net 3.5 and 2.0 books
Shariff's BLOG: How to Convert a DataReader to DataTable in ASP.NET
Shariff's BLOG: If u have any doubts in javascript or .net side you may get clarified by checking those links
Shariff's BLOG: Form Authentication – ASP.NET
Shariff's BLOG: HTML Screen Scraping using C# .Net WebClient
Shariff's BLOG: Asp .net Web.config Configuration File
Shariff's BLOG: C# .Net Tutorial Interfaces
Shariff's BLOG: Sending email in asp.net
Shariff's BLOG: Paging, Sorting, Deleting in Datagrid
Shariff's BLOG: Datagrid - Editing, Updating, Cancel, Selecting Rows
Shariff's BLOG: ViewState Vs Data Caching
Shariff's BLOG: Ajax Tutorial
Shariff's BLOG: ASP.NET 2.0 Interview Questions – (Intermediate)
Shariff's BLOG: ASP.NET 2.0 Interview Questions – Beginner Level (Part 1)
Shariff's BLOG: .NET Framework Interview Questions
Shariff's BLOG: General .NET Interview Questions
Shariff's BLOG: What is new in ASP.NET 3.5
Shariff's BLOG: .net interview questions


Shariff's BLOG: SQL Server Interview Questions
Shariff's BLOG: Joins In SQL
Shariff's BLOG: Password encryption and decryption in coldfusion:-
Shariff's BLOG: Automatically Sending Email from Sql Table Through Windows Services
Shariff's BLOG: Unable to open D (Drive): by double clicking
Shariff's BLOG: pagination in coldfusion
Shariff's BLOG: CaSe SensitiVe password logins! in COLDFUSION
Shariff's BLOG: Creating a user authentication (Login) area in ColdFusion
Shariff's BLOG: ColdFusion Security Checklist
Shariff's BLOG: Scopes in a CFC
Shariff's BLOG: Visual Studio 2008 - New Features
Shariff's BLOG: Sessions in asp.net
Shariff's BLOG: Top-Down scrolling window script
Shariff's BLOG: How Web 3.0 Will Work



Shariff's BLOG: coldfusion examples
Shariff's BLOG: javascript popup window
Shariff's BLOG: Setting, storing, and retrieving cookie data with javascript
Shariff's BLOG: Dynamic Html and CSS menu
Shariff's BLOG: Horizontal Dropdown Menu using Javascript
Shariff's BLOG: Sql Queries
Shariff's BLOG: Up-down Image Slideshow Script in javascript




Shariff's BLOG: sitemap
Shariff's BLOG: Dynamically populate the second drop down list based on the First Dropdown list
Shariff's BLOG: Drop down onfocus and Radio button validation
Shariff's BLOG: Attendance Analysis System project
Shariff's BLOG: Random password generator in CF
Shariff's BLOG: password validation on capslock on
Shariff's BLOG: RSSfeed IN Coldfusion
Shariff's BLOG: Displaying an advertisement before your front page loads in cf
Shariff's BLOG: processing page, please wait", made easy! in cf
Shariff's BLOG: What is a custom tag in coldfusion
Shariff's BLOG: Querying a Query in coldfusion
Shariff's BLOG: RSS Feed to CF Query
Shariff's BLOG: Check for an IP Address in coldfusion
Shariff's BLOG: password recovery in coldfusion
Shariff's BLOG: Dynamic Sorting in coldfusion
Shariff's BLOG: Display random images each time a page loads or is refreshed in coldfusion
Shariff's BLOG: Changing site color scheme in coldfusion
Shariff's BLOG: cfscript in coldfusion
Shariff's BLOG: Banning SPAN in coldfusion
Shariff's BLOG: Adding form results to a file (not database) in coldfusion
Shariff's BLOG: verity search in coldfusion
Shariff's BLOG: Add a newsfeed to your site using coldfusion
Shariff's BLOG: Actionscript Basics For Your Cfform
Shariff's BLOG: Using coldfusion to strip some or all HTML tags from a string
Shariff's BLOG: CF Paging Through Record Sets without URL variables
Shariff's BLOG: cfsavecontent vs. cfset for performance improvement
Shariff's BLOG: Combine multiple rows into one row using SQL Server
Shariff's BLOG: Obtain Exclusive Access to Database While Performing Maintenance Tasks in SQL Server 2005
Shariff's BLOG: Quickest way to change the location of a log file in SQL Server
Shariff's BLOG: Deleting Multiple Rows in a GridView
Shariff's BLOG: New coldfusion 8 functions
Shariff's BLOG: Captcha in asp.net
Shariff's BLOG: Adobe ColdFusion 8 Developer Certification Examination Specification
Shariff's BLOG: stored procedure in sql
Shariff's BLOG: Selecting a Random Row Using MS SQL
Shariff's BLOG: javascript validation to select only text or doc files
Shariff's BLOG: Dynamically populate the second drop down list based on the First Dropdown list
Shariff's BLOG: Drop down onfocus and Radio button validation
Shariff's BLOG: Attendance Analysis System project
Shariff's BLOG: Random password generator in CF
Shariff's BLOG: password validation on capslock on
Shariff's BLOG: RSSfeed IN Coldfusion
Shariff's BLOG: Displaying an advertisement before your front page loads in cf
Shariff's BLOG: processing page, please wait", made easy! in cf
Shariff's BLOG: processing page, please wait", made easy! in cf
Shariff's BLOG: What is a custom tag in coldfusion
Shariff's BLOG: Querying a Query in coldfusion
Shariff's BLOG: Querying a Query in coldfusion
Shariff's BLOG: RSS Feed to CF Query
Shariff's BLOG: Check for an IP Address in coldfusion
Shariff's BLOG: password recovery in coldfusion
Shariff's BLOG: Dynamic Sorting in coldfusion
Shariff's BLOG: Display random images each time a page loads or is refreshed in coldfusion
Shariff's BLOG: Changing site color scheme in coldfusion
Shariff's BLOG: cfscript in coldfusion
Shariff's BLOG: Banning SPAN in coldfusion
Shariff's BLOG: Banning SPAN in coldfusion
Shariff's BLOG: Adding form results to a file (not database) in coldfusion
Shariff's BLOG: verity search in coldfusion
Shariff's BLOG: Add a newsfeed to your site using coldfusion
Shariff's BLOG: Actionscript Basics For Your Cfform
Shariff's BLOG: Using coldfusion to strip some or all HTML tags from a string
Shariff's BLOG: CF Paging Through Record Sets without URL variables
Shariff's BLOG: cfsavecontent vs. cfset for performance improvement
Shariff's BLOG: Combine multiple rows into one row using SQL Server
Shariff's BLOG: Obtain Exclusive Access to Database While Performing Maintenance Tasks in SQL Server 2005
Shariff's BLOG: Quickest way to change the location of a log file in SQL Server
Shariff's BLOG: Quickest way to change the location of a log file in SQL Server
Shariff's BLOG: Deleting Multiple Rows in a GridView
Shariff's BLOG: Deleting Multiple Rows in a GridView
Shariff's BLOG: New coldfusion 8 functions
Shariff's BLOG: Captcha in asp.net
Shariff's BLOG: Adobe ColdFusion 8 Developer Certification Examination Specification
Shariff's BLOG: stored procedure in sql
Shariff's BLOG: Selecting a Random Row Using MS SQL
Shariff's BLOG: javascript validation to select only text or doc files
Shariff's BLOG: Dynamically populate the second drop down list based on the First Dropdown list
Shariff's BLOG: Drop down onfocus and Radio button validation
Shariff's BLOG: Attendance Analysis System project
Shariff's BLOG: Random password generator in CF
Shariff's BLOG: password validation on capslock on

Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: Unsafe code
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Collection Objects
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Modifiers
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Namespaces
Shariff's BLOG: c# tutorial
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: views in sql
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: SQL Server Database Coding Standards
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Unsafe code
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Attributes, The Reflection API And Conditionals
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Collection Objects
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Operator Overloading
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Interfaces and Structures
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Properties and Indexers
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Virtual Functions - new and override
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Modifiers
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Function Overloading and Inheritance
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Miscellaneous
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Web Enabling Data
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Components and Database Handling
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Constructors and Destructors
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: Namespaces
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: c# tutorial
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: Cookie and Session variable in coldfusion
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: open source CMS in .net
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Reduce Blogger's feed size below FeedBurner's 512K limit?
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Joins in Sql Server
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: Cursors in SQL:
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: views in sql
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: difference between MSSQL and MYSQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: Indexes in SQL
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: .NET/SQL Server job interview questions
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: Flex Tutorial
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: LCID in asp.net
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: CSS for Search Engine Optimization
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: Tracking users and search engines spiders in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: poll in coldfusion
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Search Engine Optimization with Google Sitemaps
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Performance Optimizations for High Speed JavaScript
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: Database Administration Statements in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: SELECT Syntax in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Insert statement in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Manipulation Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: Data Definition Statements in mysql
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: SQL 2008 Backup and Restore
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings
Shariff's BLOG: How to Get Great Search Engine Rankings


Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions
Shariff's BLOG: Using Multiple JavaScript Onload Functions






Page generated by XML-Sitemaps.com - A Google sitemaps and html sitemaps generator
|
Copyright © 2006, 2007

Sunday, November 2, 2008

Using Multiple JavaScript Onload Functions

Using Multiple JavaScript Onload Functions

JavaScript is one of the most popular programming languages in use on the World Wide Web. It can create interactive pages through the use of menus, forms and calendars. It can also be used to track a visitor's history on your site, play games and many other things.

When scripts are written they're used to accomplish a given task, e.g., create a rotating picture gallery, or to validate a form. This means that for each different type of usage, a separate script is necessary. Often, a script is called using an onload function.
Loading the Page

When a Web page is loaded, the code on the page — whether HTML, CSS, PHP, or some other type — is generally processed from the top down. As the browser comes upon a section of code, it's executed and the intended action is (hopefully) performed. Let's say you have the following script in the head section of a Web page:

1 function func1() {
2 alert("This is the first.");
3 }
4
5 window.onload=func1;
view plain | print | ?
function func1() { alert("This is the first."); } window.onload=func1;

When the page is loaded, the browser will stop at the script above and execute it. An alert window will pop up and the page will stop loading until the alert window is closed. Often, this isn't an issue, but if the script needs to access elements on the page that aren't yet loaded (i.e., below the current code), you will encounter problems. To resolve these, here are a few solutions.
Move it to the Bottom

One method is to place the script at the bottom of the Web page, just above the closing </body> tag. This does, however, present a few problems. First, there is a period of time that those elements which are you seeking to change with the script will be clearly seen by the visitor. Then, once the script is executed, they will "magically" change. With a fast loading page and a script that executes quickly, this might not be a problem, but if the original elements can be seen by the visitor, and are then changes, the visitor may perceive it to be some type of a hack or bug on the page, and leave the site immediately. Obviously, that's not good.

Secondly, either the script, or a link to it, will need to be included in the actual HTML body code. That's not unobtrusive JavaScript. It's best if you can keep everything separate. You'll find it's easier to work on any aspect of the page, and the page itself will load faster.
The onload Function

The window object in JavaScript has an event handler called onload. When this event handler is used, the entire page and all of its related files and components are loaded before the function listed in the onload event handler is executed, hence the term "on load."

As shown in the script above, it's easy to use, but what if you have more than one function you want to call using an onload event handler?

You would think you could just stack them like this:
1 window.onload=func1;
2 window.onload=func2;
3 window.onload=func3;
view plain | print | ?
window.onload=func1; window.onload=func2; window.onload=func3;

Unfortunately, it's not that simple. After the first onload event handler is executed, it will be replaced when the second onload event handler is executed. That, in turn, will be replaced immediately just as soon as the third onload event handler is executed. There are workarounds for this, though.
Let's Put Them in a Chain

One method that has been used quite a bit is the linking of multiple events. It places several function calls in a chain, using one onload event handler. The method would look like this:
<body onload="func1(); func2();">
<body onload="func1(); func2();">

Still, once again we run into the unobtrusive problem. In addition, you will need to add this to the <body> tag of every page that needs to use the called functions. That could be quite tedious for a large Web site, especially when changes or additions are needed.
Within Another Function

Another method is the following script:
1 function start() {
2 func1();
3 func2();
4 }
5
6 window.onload = start;
view plain | print | ?
function start() { func1(); func2(); } window.onload = start;

While this is good, there's one method that's even better.
The addLoadEvent Function
1 function addLoadEvent(func) {
2 var oldonload = window.onload;
3 if (typeof window.onload != 'function') {
4 window.onload = func;
5 } else {
6 window.onload = function() {
7 if (oldonload) {
8 oldonload();
9 }
10 func();
11 }
12 }
13 }
14
15 addLoadEvent(nameOfSomeFunctionToRunOnPageLoad);
16 addLoadEvent(function() {
17 /* more code to run on page load */
18 });
view plain | print | ?
function addLoadEvent(func) { var oldonload = window.onload; if (typeof window.onload != 'function') { window.onload = func; } else { window.onload = function() { if (oldonload) { oldonload(); } func(); } } } addLoadEvent(nameOfSomeFunctionToRunOnPageLoad); addLoadEvent(function() { /* more code to run on page load */ });

This function was written by Simon Willison. It has several advantages. For one, it's really unobtrusive. It can be placed in a file with your other scripts or in a separate file. (If it's in a separate file, just be sure to call it after the other files, so the functions will be available.)

Also, it works even if the onload event handler has been previously assigned. Simon explains it like this:

"The way this works is relatively simple: if window.onload has not already been assigned a function, the function passed to addLoadEvent is simply assigned to window.onload. If window.onload has already been set, a brand new function is created which first calls the original onload handler, then calls the new handler afterwards."

Isn't that beautiful? So, if you already have a script that uses the onload event handler, you don't need to dig it out and change it, unless you want to. It also allows for extra code. Here's an example that calls two functions and adds a third, independent addLoadEvent:
1 function func1() {
2 alert("This is the first.");
3 }
4
5 function func2() {
6 alert("This is the second.");
7 }
8
9
10 function addLoadEvent(func) {
11 var oldonload = window.onload;
12 if (typeof window.onload != 'function') {
13 window.onload = func;
14 } else {
15 window.onload = function() {
16 if (oldonload) {
17 oldonload();
18 }
19 func();
20 }
21 }
22 }
23
24 addLoadEvent(func1);
25 addLoadEvent(func2);
26
27 addLoadEvent(function() {
28 document.body.style.backgroundColor = '#EFDF95';
29 })



After calling func1 and func2, a function is created that changes the background color of the Web page. Each of these is executed in the order shown. Try it yourself and see how it works!
Conclusion

Sometimes, figuring out which approach to use in coding takes a bit of trial and error. Other times it's advantageous to search the Web and see what others have done. The addLoadEvent function should work just fine in this situation. We use it over at the JavaScript Source for all of our scripts requiring the onload event handler.