blog.hekt.org

JavascriptをHTMLから分離してみた(2)

window.onload = function formitem() {
 var ta = document.getElementById("comment");
 ta.onfocus = function() {
  this.className = this.className.replace(/textfield/, "textfield-focus");
  if (this.value == 'Add your comment\.') {
   this.value = '';
  }
 }
 ta.onblur = function() {
  this.className = this.className.replace(/textfield-focus/, "textfield");
  if (this.value == '') {
   this.value = 'Add your comment\.';
  }
 }

 var tf = document.getElementsByTagName("input");
 for (var i=0; i<tf.length; i++) {
  tf[i].onfocus = function() {
   this.className = this.className.replace(/textfield/, "textfield-focus");
  }
  tf[i].onblur = function() {
   this.className = this.className.replace(/textfield-focus/, "textfield");
  }
 }

 var inputping = document.getElementById("pinguri");
 inputping.onfocus = function() {
  this.select();
 }
}

IE6以前でも:focus擬似要素を擬似的に再現(ややこしいな)する処理を入れてみた。

昔Javascriptを勉強しようと思ってあちこちのリファレンスを読み漁ったことがあったけど、やっぱりこういうものは実践しながら学んだ方が早く理解できますね。明確な目的もなく勉強しようと思っても難しい、というのはいろんなことに言えるけど、大学の授業全てに目標を持つというのも難しいものです。