バリケンのJavaScript日記 RSSフィード

2006-11-23

[] Arrayオブジェクトsortメソッドは遅い?  Arrayオブジェクトのsortメソッドは遅い? - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  Arrayオブジェクトのsortメソッドは遅い? - バリケンのJavaScript日記  Arrayオブジェクトのsortメソッドは遅い? - バリケンのJavaScript日記 のブックマークコメント

404 Blog Not Found:javascript - Array#sortがオレquicksortより遅い!?

うーん、でもJavaScriptでそんなに大きな配列ソートってしないから、あんまり気にならないかも。

トラックバック - http://javascript.g.hatena.ne.jp/muscovyduck/20061123

2006-11-19

[] スクリプトファイルを圧縮しても読み込める?  スクリプトファイルを圧縮しても読み込める? - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  スクリプトファイルを圧縮しても読み込める? - バリケンのJavaScript日記  スクリプトファイルを圧縮しても読み込める? - バリケンのJavaScript日記 のブックマークコメント

prototype.jsを10KBにする方法 : 亜細亜ノ蛾 - Weblog

へええ、こんど試してみよっと。

トラックバック - http://javascript.g.hatena.ne.jp/muscovyduck/20061119

2006-11-13

[] ニンテンドーDSブラウザーでもJavaScript日記サイト  ニンテンドーDSブラウザーでもJavaScriptで日記サイト - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  ニンテンドーDSブラウザーでもJavaScriptで日記サイト - バリケンのJavaScript日記  ニンテンドーDSブラウザーでもJavaScriptで日記サイト - バリケンのJavaScript日記 のブックマークコメント

このあいだの「JavaScriptで日記サイト」はニンテンドーDSブラウザーでは動かない(Ajax.RequestによるHTTPでのデータ取得ができない)みたいだよ。

ニンテンドーDSブラウザーでも動くように、日記ファイルJavaScriptスクリプトにしちゃって、script要素を生成して呼び出すように改造してみたよ。一応動くけど、あんまりスマートじゃないねえ。

<html>
  <head id="head">
    <script language="JavaScript" type="text/javascript" src="prototype.js">
    </script>
    <script id="script" language="JavaScript" type="text/javascript" src="20061110.js">
    </script>
    <script type="text/javascript">
      function makeChangeText(files) {
        var i = 0;
        function f (x) {
          i = (i + x) % files.length;
          if (i < 0) i += files.length;
          return files[i];
        }
        return f;
      }
      var textFile = makeChangeText(["20061110.js", "20061109.js", "20061108.js", "20061107.js"]);
      function changeText(x) {
        $("head").removeChild($("script"));
        script = document.createElement('script') ;
        script.src = textFile(x) ;
        script.type = 'text/javascript' ;
        script.language = 'JavaScript' ;
        script.id = 'script' ;
        $("head").appendChild(script) ;
        $("message").innerHTML = diaryText;
      }
    </script>
  </head>
  <body onload="changeText(0)">
    <button onclick="changeText(1)">前の日</button>
    <button onclick="changeText(-1)">次の日</button>
    <div id="message"></div>
    <button onclick="changeText(1)">前の日</button>
    <button onclick="changeText(-1)">次の日</button>
  </body>
</html>

また今回も無料レンタルWebスペースにhtmlファイルを置いてみたよ。

http://muscovyduck.kusakage.com/javascript/diary2/

ニンテンドーDSブラウザーからでも「前の日」「次の日」をタップすると日記の表示が変わるのを試してみてね。

でも、さいしょの1回目のタップに反応しないのはどうしてかな?

トラックバック - http://javascript.g.hatena.ne.jp/muscovyduck/20061113

2006-11-11

[] HTTPデータを取得  HTTPでデータを取得 - バリケンのJavaScript日記 を含むブックマーク はてなブックマーク -  HTTPでデータを取得 - バリケンのJavaScript日記  HTTPでデータを取得 - バリケンのJavaScript日記 のブックマークコメント

今日は「HTTPデータを取得」をやってみるよ。

昨日の「スライドショー」の応用で、「日記サイト」を作ってみるよ。今回は作る過程の説明は省略するよ。ポイントAjax.Requestによる「HTTPデータを取得」の部分だよ。

<html>
  <head>
    <script language="JavaScript" type="text/javascript" src="prototype.js">
    </script>
    <script type="text/javascript">
      function makeChangeText(files) {
        var i = 0;
        function f (x) {
          i = (i + x) % files.length;
          if (i < 0) i += files.length;
          return files[i];
        }
        return f;
      }
      var textFile = makeChangeText(["20061110.txt", "20061109.txt", "20061108.txt", "20061107.txt"]);
      function changeText(x) {
        new Ajax.Request(textFile(x), {
          method: "get",
          onComplete: function(request) {
            $("message").innerHTML = request.responseText;
          }
        })
      }
    </script>
  </head>
  <body onload="changeText(0)">
    <button onclick="changeText(1)">前の日</button>
    <button onclick="changeText(-1)">次の日</button>
    <div id="message"></div>
    <button onclick="changeText(1)">前の日</button>
    <button onclick="changeText(-1)">次の日</button>
  </body>
</html>

また今回も無料レンタルWebスペースにhtmlファイルを置いてみたよ。

http://muscovyduck.kusakage.com/javascript/diary/

「前の日」「次の日」をクリックすると日記の表示が変わるのを試してみてね。

トラックバック - http://javascript.g.hatena.ne.jp/muscovyduck/20061111