JavaScriptでロールオーバーを簡単に実装する – rollover.js

2008年5月27日

Filed under: Ajax,JavaScript — admin @ 7:19 PM
JavaScript:
  1. //
  2. window.onload = function(){
  3.     var conf = {
  4.         className : 'btn'// クラス名
  5.         postfix : '_o'    // マウスオン時の画像のファイル名
  6.     };
  7.     var imgNodeList = getElementsByClassName(conf.className);
  8.     var node;
  9.     for (var i=0, len=imgNodeList.length; i<len>
  10.         node = imgNodeList[i];
  11.         node.originalSrc = node.src;
  12.         node.rolloverSrc = node.originalSrc.replace(/(.gif|.jpg|.png)/,
  13.             conf.postfix+"$1");
  14.         preloadImage(node.rolloverSrc);
  15.         node.onmouseover = function() {
  16.             this.src = this.rolloverSrc;
  17.         };
  18.         node.onmouseout = function() {
  19.             this.src = this.originalSrc;
  20.         };
  21.     }
  22. };
  23. //  クラス名によるエレメントノード配列取得
  24. function getElementsByClassName(name) {
  25.     var elements = [];
  26.     var allElements = document.getElementsByTagName('*');
  27.     var re = new RegExp("(^|\s)" + name + "($|\s)");
  28.     for (var i=0, len=allElements.length; i</len><len ;>
  29.         if (allElements[i].className.match(re)) {
  30.             elements.push(allElements[i]);
  31.         }
  32.     }
  33.     return elements;
  34. }
  35. //  プリロード
  36. preloadedImages = [];
  37. function preloadImage(url) {
  38.     var p = preloadedImages;
  39.     var l = p.length;
  40.     p[l] = new Image();
  41.     p[l].src = url;
  42. }

target="_blank" の代わり javascript

Filed under: JavaScript — admin @ 7:17 PM
HTML:
  1. <p><a href="test.html" onclick="window.open(this.href);return false;">aaa</a></p>

プルダウンメニューでリンク切り替え

2008年5月20日

Filed under: JavaScript — admin @ 6:35 PM
HTML:
  1. <select onchange="location.href = value;">
  2. <option value="page01.html">こうもく1</option>
  3. <option value="page02.html">こうもく2</option>
  4. <option value="page03.html">こうもく3</option>
  5. <option value="page04.html">こうもく4</option>
  6. </select>