R
E
S
O
U
R
C
E
S
       Question Index      Products & Services      Contact Us      Links


WebHatchers will design & develop your site for you.
_______________________

Website Menu Heaven: side or top popup menus, buttons, image rotators, navbars, tons more.
_______________________

Send us your questions and wittiest comments.
_______________________

Report errors on our site.
_______________________

Share your neatest DHTML examples with us; we may publish them.
_______________________


_______________________

      QUESTION INDEX      

Question Index
Browser Insanity
JavaScript
Animation
Buttons and Menus
CSS and HTML
PHP
Personal Status Boards
Content Management
   Systems
Article Content
   Management Systems
Website Directory
   CMS Systems
Photo Gallery CMS
Forum CMS

 INFORMATIVE ARTICLES 

Menus-and-Buttons-
Part-I.htm


Menus-and-Buttons-
Part-II.htm


Change-Div-Size-Color-
and-Location-with-the-
W3C-DOM.htm


Bouncing-Ball-Animation-
with-the-W3C-DOM.htm


Style-Changes-with-the-
W3C-DOM.htm


Animation-with-the-
W3C-DOM.htm


Window-Play-and-Some-
Important-DOM-Methods.htm


Using-getElementsByTagName
-and-getElementsByName.htm


The-CSS-Resources-Intro-
Page.htm


Convert-Word-Files-to-HTML-
and-Install-Editor2-to-
Use-Instead-of-NotePad.htm


CSS-Issues.htm

What Are Fifteen Simple Methods of Doing Web-Page Pop-ups?

Security levels from Javascript and PHP input filtering

What is a regular expression general input validator?

What is a regular expression user name validator?

What is a regular expression password validator?

What is a regular expression email validator?

What is a regular expression URL validator?

How can I convert a Javascript array to a PHP array?

How can I Dynamically Create Input Boxes with Validation?

How do I use JavaScript Object Notation (JSON) in PHP and JavaScript to convert strings and arrays from PHP to JavaScript?

How do I add html to a web page with JavaScript, PHP or ssi includes?

How do I add html to a web page with JavaScript includes?


PHP

How do you put PHP variables in URL and link text?

What is PHP Code for Multiple PSB Hosts?

What is Registration PHP Code for Multiple PSB Hosts?

What is Registration PHP Code for Multiple PSB Hosts with a captcha?

What is Administrator PHP Code for Multiple PSB Hosts?

What's the PHP code for a script for a PSB?

What's the PHP code for a script for PSB updating?

What's the PHP code for a script if you forgot your user name?

What's the PHP code for a script if you forgot your password?

What's the PHP code for a script to change a member's email address?

What's the PHP code for a script to connect to a MySQL database?

What's the PHP code for a script to close a member's account?

What's the PHP code for a script to edit group member?

What's the PHP code for a script to add group member?

What's the PHP code for a script to reset a MySQL table's data to its original?

What's the PHP code for a script to edit a MySQL table's data?

What's the PHP code for a script to change a username?

What's the PHP code for a script to change a password?

What's the PHP code for a script to delete group member?

What's the PHP code for a script to view membership data?

What's the PHP code for a script to change an administrator's password?

What's the PHP code for a script to logout?

What's the PHP code for a script to login?

Security levels from Javascript and PHP input filtering

Security levels and PHP

How can I convert a Javascript array to a PHP array?

What is PHP Code to Prevent Duplicate Data Input - Like User Names or Members?

What is PHP Code for PSB Status Update for Multiple PSB Hosts?

How do I sort 1 PHP array and have the other arrays sort in parallel to how the first array sorts?

How do I use JavaScript Object Notation (JSON) in PHP and JavaScript to convert strings and arrays from PHP to JavaScript?

How do you do PHP-to-JavaScript String Conversion with No JSON?

How do you Convert PHP String to JavaScript String?

How do you Post a JavaScript Array to a PHP Array?

How do you send a value to PHP using JavaScript?

Info on unwanted primary field auto-sorting

How can I do instant article font size, font family, and paragraph formatting with radio buttons?

How can I create custom HTML tags that are safer for MySQL databases?

How can I edit text from MySQL databases by using a textarea box?

How can I highlight matched search terms in a MySQL database table search?

How can I search using not only exact phrase matching but also a series of words to match in a MySQL database table search?

What's the code for an Ajax and PHP Based Input Filter?

Ajax and PHP Based Insult Auto-Completer

How can I use PHP and MySQL for Checking Key Codes to Allow Update to a New Software App Version?




Personal Status Boards (PSB™)

Standard Free PSB

PSB Pro Version

Social PSB

Social PSB Plus (with Email)

Business PSB

Business PSB Plus (with Email)

PSB demo

Social PSB demo

Business PSB demo

So what's all this PSB stuff about?

Chart comparing business status boards

PSB hosting diagram

PSB Licence Agreement




Article Content Management System

Content Management System Introduction

Content Management System—Article Navigation

Content Management System—Article Indexing

Content Management System—Article Editing

Content Management System—Article Searching

Content Management System—Article Deleting

Content Management System—Article Writing

Content Management System—Article Reading

What are the terms of use for our Article Content Management System?




Website Directory Content Management System

Website Directory Navigation

Website Directory—Delete Category

Website Directory—Delete URL

Website Directory—Add URL

Website Directory—Add Category

Website Directory—Directory Creating

Website Directory—View by Category (Demo Code)

Website Directory—View by URL (Demo Code)

Website Directory—View by Category (Demo)

Website Directory—View by URL (Demo)

Website Directory—View

Website Directory—View (Demo)




Photo Gallery Content Management System

Code for Photo Gallery Navigation

Code for Photo Gallery—View

Code for Photo Gallery—Create

Code for Photo Gallery—Add Category

Code for Photo Gallery—Delete Category

Code for Photo Gallery—Add Photo

Code for Photo Gallery—Delete Photo

Code for JavaScript Photo Gallery

JavaScript Photo Gallery




Forum Content Management System

Forum: home page

Forum: search

Forum: login

Forum: topic and replies viewing page

Forum: add topic to database

Forum: add reply to database

Forum: edit topic in database

Forum: create topic in database

Forum: delete topic in database

Forum: delete reply in database

Forum: delete user account in members table



Copyright © 2002 -
MCS Investments, Inc. sitemap

PSBs, social networking, social evolution, microcommunities, personal status boards
PSBs, social networking, business personal status boards
website design, ecommerce solutions
website menus, buttons, image rotators
Ez-Architect, home design software
the magic carpet and the cement wall, children's adventure book
the squirrel valley railroad, model railroad videos, model train dvds
the deep rock railroad, model railroad videos, model train dvds

Using getElementsByTagName and getElementsByName

These two methods are best for using W3C DOM methods to quickly retrieve and either peruse or edit multiple elements. In the file we like to call testchangecolorwithgetelementsbyname.html, you'll see how both getElementsByTagName and getElementsByName are specifically designed for fast and efficient dynamic object property changes from JavaScript. The sweetest part of it is, these methods will not only go dig up all the tags with a certain name attribute or tag name, they’ll slap them into convenient arrays for us. Now, that’s service!

Before we continue, we should dispel some of the misinformation in a few books and on the Internet: Contrary to what some have said, there is no legal way to use the name attribute from such tags as div or span, according to the W3C HTML 4.01 specs. You must confine the usage of this attribute to such tags as input, img, frame, iframe, form, map, param, meta, object, A, select, applet, textarea, or button. Those who use XML or XHTML or XFILES or whatever may have different rules to play by (we don’t know or care since we’re confining all our nuggets of wisdom to the four areas we know something about: JavaScript, CSS, HTML, and DHTML).

For the reasons mentioned above, in this web page we’ll be using getElementsByTagName for getting all divs, and getElementsByName for getting all input tags, although we could have used the former method for input tag retrieval too. But we could not have used getElementsByName for div retrieval. Just to be sure, we tried this on both span and div. No go. Now that that’s cleared up, let’s look at the code:

function hue(nextColor){

var e=document.getElementsByName("n");

for(var i=0;i<e.length;i++){e[i].style.backgroundColor = nextColor;}

var e=document.getElementsByTagName("div");

for(var i=0;i<e.length;i++){e[i].style.backgroundColor = nextColor;}

}

The object e is the array of div objects and their properties in the second part of the function above, while all objects (with their properties) named "n" are found in the first part of the function. e[i] is the object array, e.length is the number of array elements, the for loop is incremented through its elements with i++, and e[i].style.backgroundColor = nextColor; is one of the array objects getting one of its style property values changed.

The rest of the code is worth a quick comment or two as well. The gold, coral, and lavender buttons are all CSS div buttons that perform rollovers with the combination of CSS and more CSS and no JavaScript. The first CSS is to style the a and visited link pseudo-classes regulating anything (like a div box) with a link in it to look like a button aching to be pushed. The second CSS is to style the hover link pseudo-class so that the response to being hovered over is to look pushed. Of course, pseudo-classes don’t register mouse clicks, but one could easily make a function wherein the same style changes are effected that are now to be found in the link pseudo-class CSS code, shown below:

a, a:visited {text-decoration: none; color:black; width:100%; height:100%; border:solid 3px; border-color:#cccccc #555555 #555555 #cccccc; display:block;}

a:hover {color:black; width:100%; height:100%; border:solid 3px; border-color:#555555 #cccccc #cccccc #555555; display:block;}

Note that the first CSS code block above refers to all links, and then all visited ones, and it creates borders appropriate to a non-pushed button. The second code block refers to hovered links, and it creates borders appropriate to a pushed button. The display:block rule is for a sometimes clueless Netscape to get a clue.

Next comes the class rules for the cyan, fuchsia, and deeppink buttons that are not depressable and not links and cannot profit from link pseudo-class rules, so these buttons are just given decorative borders. Then the input buttons all get decorated.

.c {border:solid 3px; border-color:slategray;}

input {color:black; background-color:tan;}

Here's the first div button’s code and the wipe() function. Note that one can get away with sticking a name in the div, but to what end? If you find it worth more than an election year promise, contact us and let us know. The only part of each of the six button styles in which we put inline styles rather than embedded is the top property, so that the buttons wouldn’t be on top of each other. The link is designed to do nothing but give us a clicking place, hence the void (do nothing). The onfocus event handler deals with the focus pseudo-class and this has the effect of keeping a link indication box from surrounding the button, which looks crummy. The wipe() function keeps visitors from seeing javascript:void(0) on the status bar when they hover over the button. It’s there twice as that’s what it took to keep the status bar looking right. When you click, the color changes on everything on the page due to the hue() function. When you hover over the button, it depresses.

<div name="m" style="top:53px;"><a href="javascript:void(0)" onfocus="this.blur();wipe()" onMouseOver="wipe(); return true" onClick="hue('gold')">gold (click)</a></div>


function wipe(){window.status= "Look at all the pretty colors!";} //erase status bar or give it a desired message here (between quotes)

The next three buttons aren't designed for depressing. Each has a different event handler type. Observe that you can get away with putting event handlers inside a div tag without using a link anchor:

<div name="m" class="c" style="top:110px;" onMouseOver="javascript:hue('cyan')"><b>cyan</b> (hover)</div>

<div name="m" class="c" style="top:160px;" onClick="javascript:hue('fuchsia')"><b>fuchsia</b> (click)</div>

<div name="m" class="c" style="top:210px;" onDblClick="javascript:hue('deeppink')"><b>deeppink</b> (double-click)</div>

The final two buttons are a bit different. Like the first button, they're depressable, but the link code differs. The # sign is not much of a link, but then we want a do-nothing response. It works fine, first with a clickable button and then with a hoverable button.

<div name="m" style="top:270px;"><a HREF="#" onfocus="this.blur();wipe()" onMouseOver="wipe(); return true" onClick="javascript:hue('coral')">&nbsp;&nbsp;&nbsp;coral (click)&nbsp;&nbsp;&nbsp;</a></div>

<div name="m" style="top:323px;"><a HREF="#" onfocus="this.blur();wipe()" onMouseOver="javascript:hue('lavender')">&nbsp;&nbsp;&nbsp;lavender (hover)&nbsp;&nbsp;&nbsp;</a></div>

The final type of button to inspect is the form input button. You don’t need to submit anything or mess with cgi bins to use forms’ client-side user control tags. Some forms need server-side aid; others don’t. Note the name attribute—which is found on all the input buttons—that allows the getElementsByName("n") method to access the element, even though getElementsByTagName("input") would have also worked. The color parameter we are sending to the function could have been in hex—that would have given us over 16 million choices (not all web-safe).

<INPUT name="n" TYPE="button" VALUE="blue" onClick="hue('blue');"><br>