Never been to CodeSnippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world (or not, you can keep them private!)

Load javascript function from returned ajax HTML

Problem - calling a function in <script> tags from dynamic ajax results does not get executed by the browser

Resolution - make a pixel image and call the function with the onload event in the image

<img src="some_image.jpg" onload="someFunction();">

IE Fix for max-width CSS property

AGAIN another IE fix. IE of course does not recognize the max-width CSS property. This piece of code will fix it for IE6 and IE7. This code snip will make the maximum width for the html object 900 pixels.

.cssClass
{
width:expression(document.body.clientWidth > 900? "900px": "auto" );
}

Close dangling HTML tags

Close open HTML tags, e.g. if you allow HTML in your comments. Not quite as robust as running it through tidy, but tidy is not always available.

function close_dangling_tags($html){
  #put all opened tags into an array
  preg_match_all("#<([a-z]+)( .*)?(?!/)>#iU",$html,$result);
  $openedtags=$result[1];

  #put all closed tags into an array
  preg_match_all("#</([a-z]+)>#iU",$html,$result);
  $closedtags=$result[1];
  $len_opened = count($openedtags);
  # all tags are closed
  if(count($closedtags) == $len_opened){
    return $html;
  }

  $openedtags = array_reverse($openedtags);
  # close tags
  for($i=0;$i < $len_opened;$i++) {
    if (!in_array($openedtags[$i],$closedtags)){
      $html .= '</'.$openedtags[$i].'>';
    } else {
      unset($closedtags[array_search($openedtags[$i],$closedtags)]);
    }
  }
  return $html;
}

HTML Form Values - Select U.S. State or Canadian Province with ISO code

// description of your code here

<select id="state" name="state">
<option value="">Select One</option>
<optgroup label="Canadian Provinces">
<option value="AB">Alberta</option>
<option value="BC">British Columbia</option>
<option value="MB">Manitoba</option>
<option value="NB">New Brunswick</option>
<option value="NF">Newfoundland</option>
<option value="NT">Northwest Territories</option>
<option value="NS">Nova Scotia</option>
<option value="NU">Nunavut</option>
<option value="ON">Ontario</option>
<option value="PE">Prince Edward Island</option>
<option value="QC">Quebec</option>
<option value="SK">Saskatchewan</option>
<option value="YT">Yukon Territory</option>
</optgroup>
			
<optgroup label="U.S. States">
<option value="AK">Alaska</option>
<option value="AL">Alabama</option>
<option value="AR">Arkansas</option>
<option value="AZ">Arizona</option>
<option value="CA">California</option>
<option value="CO">Colorado</option>
<option value="CT">Connecticut</option>
<option value="DC">District of Columbia</option>
<option value="DE">Delaware</option>
<option value="FL">Florida</option>
<option value="GA">Georgia</option>
<option value="HI">Hawaii</option>
<option value="IA">Iowa</option>
<option value="ID">Idaho</option>
<option value="IL">Illinois</option>
<option value="IN">Indiana</option>
<option value="KS">Kansas</option>
<option value="KY">Kentucky</option>
<option value="LA">Louisiana</option>
<option value="MA">Massachusetts</option>
<option value="MD">Maryland</option>
<option value="ME">Maine</option>
<option value="MI">Michigan</option>
<option value="MN">Minnesota</option>
<option value="MO">Missouri</option>
<option value="MS">Mississippi</option>
<option value="MT">Montana</option>
<option value="NC">North Carolina</option>
<option value="ND">North Dakota</option>
<option value="NE">Nebraska</option>
<option value="NH">New Hampshire</option>
<option value="NJ">New Jersey</option>
<option value="NM">New Mexico</option>
<option value="NV">Nevada</option>
<option value="NY">New York</option>
<option value="OH">Ohio</option>
<option value="OK">Oklahoma</option>
<option value="OR">Oregon</option>
<option value="PA">Pennsylvania</option>
<option value="PR">Puerto Rico</option>
<option value="RI">Rhode Island</option>
<option value="SC">South Carolina</option>
<option value="SD">South Dakota</option>
<option value="TN">Tennessee</option>
<option value="TX">Texas</option>
<option value="UT">Utah</option>
<option value="VA">Virginia</option>
<option value="VT">Vermont</option>
<option value="WA">Washington</option>
<option value="WI">Wisconsin</option>
<option value="WV">West Virginia</option>
<option value="WY">Wyoming</option>
</optgroup>
</select>

HTML Form Values - Select Country 2-letter ISO Code

// An HTML form select box containing country names with the values set to their 2-letter ISO codes.

<select size="1" id="country" name="country">
<option value="">Select One</option>
<option value="US">United States</option>
<option value="CA">Canada</option>
<option value="">----------</option>
<option value="AF">Afghanistan</option>
<option value="AL">Albania</option>
<option value="DZ">Algeria</option>
<option value="AS">American Samoa</option>
<option value="AD">Andorra</option>
<option value="AO">Angola</option>
<option value="AI">Anguilla</option>
<option value="AQ">Antarctica</option>
<option value="AG">Antigua and Barbuda</option>
<option value="AR">Argentina</option>
<option value="AM">Armenia</option>
<option value="AW">Aruba</option>
<option value="AU">Australia</option>
<option value="AT">Austria</option>
<option value="AZ">Azerbaidjan</option>
<option value="BS">Bahamas</option>
<option value="BH">Bahrain</option>
<option value="BD">Bangladesh</option>
<option value="BB">Barbados</option>
<option value="BY">Belarus</option>
<option value="BE">Belgium</option>
<option value="BZ">Belize</option>
<option value="BJ">Benin</option>
<option value="BM">Bermuda</option>
<option value="BT">Bhutan</option>
<option value="BO">Bolivia</option>
<option value="BA">Bosnia-Herzegovina</option>
<option value="BW">Botswana</option>
<option value="BV">Bouvet Island</option>
<option value="BR">Brazil</option>
<option value="IO">British Indian Ocean Territory</option>
<option value="BN">Brunei Darussalam</option>
<option value="BG">Bulgaria</option>
<option value="BF">Burkina Faso</option>
<option value="BI">Burundi</option>
<option value="KH">Cambodia</option>
<option value="CM">Cameroon</option>
<option value="CV">Cape Verde</option>
<option value="KY">Cayman Islands</option>
<option value="CF">Central African Republic</option>
<option value="TD">Chad</option>
<option value="CL">Chile</option>
<option value="CN">China</option>
<option value="CX">Christmas Island</option>
<option value="CC">Cocos (Keeling) Islands</option>
<option value="CO">Colombia</option>
<option value="KM">Comoros</option>
<option value="CG">Congo</option>
<option value="CK">Cook Islands</option>
<option value="CR">Costa Rica</option>
<option value="HR">Croatia</option>
<option value="CU">Cuba</option>
<option value="CY">Cyprus</option>
<option value="CZ">Czech Republic</option>
<option value="DK">Denmark</option>
<option value="DJ">Djibouti</option>
<option value="DM">Dominica</option>
<option value="DO">Dominican Republic</option>
<option value="TP">East Timor</option>
<option value="EC">Ecuador</option>
<option value="EG">Egypt</option>
<option value="SV">El Salvador</option>
<option value="GQ">Equatorial Guinea</option>
<option value="ER">Eritrea</option>
<option value="EE">Estonia</option>
<option value="ET">Ethiopia</option>
<option value="FK">Falkland Islands</option>
<option value="FO">Faroe Islands</option>
<option value="FJ">Fiji</option>
<option value="FI">Finland</option>
<option value="CS">Former Czechoslovakia</option>
<option value="SU">Former USSR</option>
<option value="FR">France</option>
<option value="FX">France (European Territory)</option>
<option value="GF">French Guyana</option>
<option value="TF">French Southern Territories</option>
<option value="GA">Gabon</option>
<option value="GM">Gambia</option>
<option value="GE">Georgia</option>
<option value="DE">Germany</option>
<option value="GH">Ghana</option>
<option value="GI">Gibraltar</option>
<option value="GB">Great Britain</option>
<option value="GR">Greece</option>
<option value="GL">Greenland</option>
<option value="GD">Grenada</option>
<option value="GP">Guadeloupe (French)</option>
<option value="GU">Guam (USA)</option>
<option value="GT">Guatemala</option>
<option value="GN">Guinea</option>
<option value="GW">Guinea Bissau</option>
<option value="GY">Guyana</option>
<option value="HT">Haiti</option>
<option value="HM">Heard and McDonald Islands</option>
<option value="HN">Honduras</option>
<option value="HK">Hong Kong</option>
<option value="HU">Hungary</option>
<option value="IS">Iceland</option>
<option value="IN">India</option>
<option value="ID">Indonesia</option>
<option value="INT">International</option>
<option value="IR">Iran</option>
<option value="IQ">Iraq</option>
<option value="IE">Ireland</option>
<option value="IL">Israel</option>
<option value="IT">Italy</option>
<option value="CI">Ivory Coast (Cote D&#39;Ivoire)</option>
<option value="JM">Jamaica</option>
<option value="JP">Japan</option>
<option value="JO">Jordan</option>
<option value="KZ">Kazakhstan</option>
<option value="KE">Kenya</option>
<option value="KI">Kiribati</option>
<option value="KW">Kuwait</option>
<option value="KG">Kyrgyzstan</option>
<option value="LA">Laos</option>
<option value="LV">Latvia</option>
<option value="LB">Lebanon</option>
<option value="LS">Lesotho</option>
<option value="LR">Liberia</option>
<option value="LY">Libya</option>
<option value="LI">Liechtenstein</option>
<option value="LT">Lithuania</option>
<option value="LU">Luxembourg</option>
<option value="MO">Macau</option>
<option value="MK">Macedonia</option>
<option value="MG">Madagascar</option>
<option value="MW">Malawi</option>
<option value="MY">Malaysia</option>
<option value="MV">Maldives</option>
<option value="ML">Mali</option>
<option value="MT">Malta</option>
<option value="MH">Marshall Islands</option>
<option value="MQ">Martinique (French)</option>
<option value="MR">Mauritania</option>
<option value="MU">Mauritius</option>
<option value="YT">Mayotte</option>
<option value="MX">Mexico</option>
<option value="FM">Micronesia</option>
<option value="MD">Moldavia</option>
<option value="MC">Monaco</option>
<option value="MN">Mongolia</option>
<option value="MS">Montserrat</option>
<option value="MA">Morocco</option>
<option value="MZ">Mozambique</option>
<option value="MM">Myanmar</option>
<option value="NA">Namibia</option>
<option value="NR">Nauru</option>
<option value="NP">Nepal</option>
<option value="NL">Netherlands</option>
<option value="AN">Netherlands Antilles</option>
<option value="NT">Neutral Zone</option>
<option value="NC">New Caledonia (French)</option>
<option value="NZ">New Zealand</option>
<option value="NI">Nicaragua</option>
<option value="NE">Niger</option>
<option value="NG">Nigeria</option>
<option value="NU">Niue</option>
<option value="NF">Norfolk Island</option>
<option value="KP">North Korea</option>
<option value="MP">Northern Mariana Islands</option>
<option value="NO">Norway</option>
<option value="OM">Oman</option>
<option value="PK">Pakistan</option>
<option value="PW">Palau</option>
<option value="PA">Panama</option>
<option value="PG">Papua New Guinea</option>
<option value="PY">Paraguay</option>
<option value="PE">Peru</option>
<option value="PH">Philippines</option>
<option value="PN">Pitcairn Island</option>
<option value="PL">Poland</option>
<option value="PF">Polynesia (French)</option>
<option value="PT">Portugal</option>
<option value="PR">Puerto Rico</option>
<option value="QA">Qatar</option>
<option value="RE">Reunion (French)</option>
<option value="RO">Romania</option>
<option value="RU">Russian Federation</option>
<option value="RW">Rwanda</option>
<option value="GS">S. Georgia & S. Sandwich Isls.</option>
<option value="SH">Saint Helena</option>
<option value="KN">Saint Kitts & Nevis Anguilla</option>
<option value="LC">Saint Lucia</option>
<option value="PM">Saint Pierre and Miquelon</option>
<option value="ST">Saint Tome (Sao Tome) and Principe</option>
<option value="VC">Saint Vincent & Grenadines</option>
<option value="WS">Samoa</option>
<option value="SM">San Marino</option>
<option value="SA">Saudi Arabia</option>
<option value="SN">Senegal</option>
<option value="SC">Seychelles</option>
<option value="SL">Sierra Leone</option>
<option value="SG">Singapore</option>
<option value="SK">Slovak Republic</option>
<option value="SI">Slovenia</option>
<option value="SB">Solomon Islands</option>
<option value="SO">Somalia</option>
<option value="ZA">South Africa</option>
<option value="KR">South Korea</option>
<option value="ES">Spain</option>
<option value="LK">Sri Lanka</option>
<option value="SD">Sudan</option>
<option value="SR">Suriname</option>
<option value="SJ">Svalbard and Jan Mayen Islands</option>
<option value="SZ">Swaziland</option>
<option value="SE">Sweden</option>
<option value="CH">Switzerland</option>
<option value="SY">Syria</option>
<option value="TJ">Tadjikistan</option>
<option value="TW">Taiwan</option>
<option value="TZ">Tanzania</option>
<option value="TH">Thailand</option>
<option value="TG">Togo</option>
<option value="TK">Tokelau</option>
<option value="TO">Tonga</option>
<option value="TT">Trinidad and Tobago</option>
<option value="TN">Tunisia</option>
<option value="TR">Turkey</option>
<option value="TM">Turkmenistan</option>
<option value="TC">Turks and Caicos Islands</option>
<option value="TV">Tuvalu</option>
<option value="UG">Uganda</option>
<option value="UA">Ukraine</option>
<option value="AE">United Arab Emirates</option>
<option value="GB">United Kingdom</option>
<option value="UY">Uruguay</option>
<option value="MIL">USA Military</option>
<option value="UM">USA Minor Outlying Islands</option>
<option value="UZ">Uzbekistan</option>
<option value="VU">Vanuatu</option>
<option value="VA">Vatican City State</option>
<option value="VE">Venezuela</option>
<option value="VN">Vietnam</option>
<option value="VG">Virgin Islands (British)</option>
<option value="VI">Virgin Islands (USA)</option>
<option value="WF">Wallis and Futuna Islands</option>
<option value="EH">Western Sahara</option>
<option value="YE">Yemen</option>
<option value="YU">Yugoslavia</option>
<option value="ZR">Zaire</option>
<option value="ZM">Zambia</option>
<option value="ZW">Zimbabwe</option>
</select>

Post link to POOKMARK with Textpattern

Simple link to post each individual article to Japanese social bookmark "POOKMARK".

POOKMARK Airlines
http://pookmark.jp/

<a href="http://pookmark.jp/post?url=<txp:permlink />&title=<txp:title />" title="">POOKMARK THIS</a>

tank_base_theme.css

// base

@charset "iso-8859-1";

/*******************************************************************************
*  tank_base_theme.css : 2005.09.01
* -----------------------------------------------------------------------------
*  Base Tank! theme. Applied to the layout by default. Theme modifications
*  applied via a style-switcher or external stylesheet should build upon what
*  is here. 
*******************************************************************************/

@import "http://webhost.bridgew.edu/etribou/layouts/utility_css/visual_consistencies.css";

p
{
	line-height: 140%;
}
body
{
	background-color: #fec;
	color: #000;
	background-image: url("../images/ruthsarian.png");
	background-repeat: no-repeat;
	background-position: 30px 100%;
	background-attachment: fixed;
}
#topMenu ul
{
	width: 12em;	/* make the pop menus a little wider */
}
#pageWrapper, #innerColumnContainer, #masthead, #footer, #topMenu, #topMenu ul, #topMenu a
{
	border-color: #c93;
}
div.twoColumns div.leftColumn, div.twoColumns div.rightColumn
{
	border-color: #ddd;
}
#pageWrapper
{
	background-color: #f9f9f2;
	color: #665;
	font-family: arial, helvetica, sans-serif;
	font-size: 80%;
	background-image: url("../images/ruthsarian.png");
	background-repeat: no-repeat;
	background-position: -110px 100%;
}
#masthead
{
	background-color: #dc8;
	background-image: url("../images/tank.png");
	background-position: 100% 100%;
	background-repeat: no-repeat;
	padding: 10px;
	color: #000;
}
#masthead h1
{
	font-size: 150%;
}
#masthead h2
{
	font-size: 260%;
	color: #862;
}
#outerColumnContainer
{
	background-color: #fff;
	color: #223;
	border-right-color: #fff; /* right column background color */
}

#contentColumn, #rightColumn, #masthead, #footer
{
	padding-top: 10px;
	padding-bottom: 10px;
}
#contentColumn
{
	padding-top: 0;
}
#topMenu
{
	border: solid 0 #c93;
	border-width: 4px 0 0 0;
	padding-right: 40px;
}
#topMenu li a, #topMenu li a:link, #topMenu li a:visited, #topMenu li a:active
{
	background-color: #ffe;
}
#topMenu li a:hover
{
	color: #fff;
	background-color: #c93;	/* keep the same color as the borders */
}
#rightColumn ul.rMenu
{
	margin: 0 5px 10px 5px;
}
#rightColumn ul.rMenu, #rightColumn ul.rMenu li a,  #rightColumn ul.rMenu li ul
{
	border-color: #ed9;
}
#rightColumn ul.rMenu a:link, #rightColumn ul.rMenu a:visited, #rightColumn ul.rMenu a:active
{
	background-color: #ffe;
	color: #336;
}
#rightColumn ul.rMenu a:hover
{
	background-color: #c93;
	color: #fff;
}
#rightColumn h3
{
	margin-bottom: 0;
	padding-bottom: 0;
	color: #b83;
	z-index: 999;
	line-height: 0.75em;
	font-size: 140%;
	/* \*/ position: relative;	/* With this here, IE/Mac will put this on 
					   top of every other element in the page. so
					   drop-down menus appear under. ick. so hide
					   it with this hack. */
}

Ruthsarian Layouts - Tank!

// http://webhost.bridgew.edu/etribou/layouts/Tank!/index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
	"http://www.w3.org/TR/html4/strict.dtd">

<html lang="en">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
		<style type="text/css" media="screen">
		<!--
			@import "css/tank.css";
			@import "css/tank_base_theme.css";
		-->
		</style>
		<link rel="alternate stylesheet" title="blue : color" href="css/theme/blue.css" media="screen">
		<link rel="alternate stylesheet" title="green : color" href="css/theme/green.css" media="screen">
		<link rel="alternate stylesheet" title="camille : color" href="css/theme/camille.css" media="screen">
		<link rel="alternate stylesheet" title="gray : color" href="css/theme/gray.css" media="screen">
		<link rel="alternate stylesheet" title="black : color" href="css/theme/black.css" media="screen">
		<script type="text/javascript" src="http://webhost.bridgew.edu/etribou/layouts/javascript/ruthsarian_utilities.js"></script>
		<script type="text/javascript">
		<!--
			var font_sizes = new Array( 100, 86, 124 );
			var current_font_size = 0;
			var browser = new browser_detect();
 			if ( ( typeof( NN_reloadPage ) ).toLowerCase() != 'undefined' ) { NN_reloadPage( true ); }
			if ( ( typeof( set_min_width ) ).toLowerCase() != 'undefined' ) { set_min_width( 'pageWrapper' , 760 ); }
			if ( ( typeof( sfHover       ) ).toLowerCase() != 'undefined' ) { event_attach( 'onload' , function () { sfHover( 'topMenu' ); sfHover( 'rightMenu' ); } );  }
			if ( ( typeof( loadFontSize  ) ).toLowerCase() != 'undefined' ) { event_attach( 'onload' , loadFontSize ); }
			if ( ( typeof( setActiveStyleSheet ) ).toLowerCase() != 'undefined' ) { setActiveStyleSheet( getPreferredStylesheet( 'color' ) , 'color' ); }
		//	if ( ( typeof( opacity_init  ) ).toLowerCase() != 'undefined' ) { opacity_init(); }
		//-->
		</script>
		<title>Tank! : Ruthsarian Layouts</title>
	</head>
	<body lang="en">
		<div id="pageWrapper">
			<div id="masthead">

<h1>Ruthsarian Layouts</h1>
<h2>Tank!</h2>

				<hr class="hide">
			</div>
			<div id="outerColumnContainer">
				<div id="innerColumnContainer">
					<div id="contentColumn">

	<ul id="topMenu" class="clearfix rMenu-hRight rMenu-hor rMenu"
		><li class="rMenu-expand"
			><a href="http://webhost.bridgew.edu/etribou/layouts/">Layouts</a
			> <ul class="rMenu-ver"
				><li class="rMenu-expand"
					><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/">Skidoo</a
					> <ul class=""
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/fixed_width.html">Fixed Width</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/fluid_width.html">Fluid Fixed Width</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/tweak_02.html">Detached Masthead</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/tweak_01.html">Border Into Masthead</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/bgImages.html">Background Images</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo/demos/gutterless.html">Gutterless</a
						></li
					> </ul
				></li
				><li
					><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo_too/">Skidoo Too</a
				></li
				><li
					><a href="http://webhost.bridgew.edu/etribou/layouts/skidoo_too/gargoyles/">Gargoyles</a
				></li
				><li class="rMenu-expand"
					><a href="http://webhost.bridgew.edu/etribou/layouts/exp/index.html">Experiments</a
					> <ul class=""
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/exp/plaine/">Plaine</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/exp/nausicaa/">NausicaƤ</a
						></li
						><li
							><a href="http://webhost.bridgew.edu/etribou/layouts/exp/bob/">Bob</a
						></li
					> </ul
				></li
			> </ul
		></li
		><li
			><a href="http://webhost.bridgew.edu/etribou/software/">Labs</a
		></li
		><li class="