タグ

ブックマーク / hail2u.net (5)

  • JavaScriptで配列をシャッフル

    配列をシャッフル、つまりランダムに要素の位置を入れ替えるというのを、sortメソッドを使ってやってみたのだけど、明らかにダメダメなものになってしまった。その後、あーでもないこーでもないと考えたのだけど、算数が得意すぎて頭が痛くなった。ということを某所でぼやいたらはてのくんがコードを見つけてくれた。どうやらFisher-Yatesという有名なアルゴリズムでやると良いらしい。 最初に書いたコードは、 var a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9); a.sort( function (a, b) { return Math.ceil(Math.random() * 3) - 2; } ); というもの。sortメソッドは、パラメータに与えられた関数が負の値・0・正の値を返すことによって要素の順序を決定するので、その関数がランダムに値を返せばランダ

    JavaScriptで配列をシャッフル
    teddy-g
    teddy-g 2009/05/25
    ここからJavascriptでシャッフルする短いスクリプトにたどりついた
  • 現在の内容

    JavaScriptで動的に生成されたドキュメントの内容を知りたいと思ったことはないですか? 僕はあります。それを無理やり実現してみるテスト。 <html> <script type="text/javascript" defer> <!-- var pWin = external.menuArguments; var doc = pWin.document; doc.body.innerText = doc.all.tags("html")[0].outerHTML; doc.body.style.color = "windowtext"; doc.body.style.background = "window"; doc.body.style.fontFamily = "'MS ゴシック'"; doc.body.style.fontSize = "10pt"; doc.body.sty

    現在の内容
    teddy-g
    teddy-g 2008/02/04
    動的生成した内容をコンテキストメニューから表示させる
  • hail2u.net - Weblog - Google AJAX Search APIのJSONPを利用したサイト内検索

    Google AJAX Search APIは、動的にGoogle検索結果を自分のページに挿入することができるAPI(あまり使っているサイトを見ないけど)。Ajaxっつっても内部はJSONP(みたいなもの)だったりするので、普通にGwebSearchクラスのsetSiteRestriction()メソッドを使うのではなく、JSONPを直接叩いてサイト内検索を実装することもできる。もちろんサイト内検索に限った話ではないけど。 Google AJAX Search APIのGwebSearchクラスによる検索は、 http://www.google.com/uds/GwebSearch?callback={コールバック関数名}&context=0&lstkp=0&hl=ja&q={検索文字列}&key={Google AJAX Search API key}&v=0.1 というURLへリクエス

    hail2u.net - Weblog - Google AJAX Search APIのJSONPを利用したサイト内検索
    teddy-g
    teddy-g 2007/07/12
    Google Ajax APIのJSONPを直接いじくってhogeる
  • JSONScriptRequest

    動的にscript要素を追加してやることによってクロス・ドメインのJavaScriptファイルを読み込むというテクニック。Firefoxの場合は動的に追加するscript要素のonload属性で読み込んだJavaScriptファイルを処理するfunctionを指定してやれば問題ない。しかし、これをクロス・ブラウザで実現するには違ったアプローチが必要になる。そのひとつがJSON and the Dynamic Script Tag: Easy, XML-less Web Services for JavaScriptで取り上げられているJSONScriptRequest。XmlHttpRequestと比較するとかなり機能が限定されたものだけど、扱いが手軽で限定された環境ではなかなか威力を発揮するっぽい。 JSONScriptRequestはどうやらJSONPと呼ばれている、JSONデータをc

    JSONScriptRequest
    teddy-g
    teddy-g 2006/08/25
    JSONP、コールバックを指定。読み込みを確認する例のあれとどっちがいいのかな。
  • hail2u.net - Weblog - Coding

    teddy-g
    teddy-g 2005/09/06
    JSONのコーディングのヒントがある。
  • 1