タグ

JavaScriptとJavascriptに関するagwのブックマーク (1,098)

  • JavaScript-XPath をリリースしました!さあ、あなたも XPath を使おう!(解説付き) - IT戦記

    JavaScript-XPath とは JavaScript-XPath は、 DOM 3 XPath を実装していないブラウザに対して、実用的な速度で動作する DOM 3 XPath のエンジンを追加します。 一言で乱暴に言ってしまえば、どのブラウザでも document.evaluate って関数で XPath 使えるようになるよ!ってことです。 以下が公式サイトになります。 http://coderepos.org/share/wiki/JavaScript-XPath DOM 3 XPath ってなんなの!? めっちゃ簡単(で、ちょっとだけ適当)なDOM 3 XPath の説明をします><。 JavaScript でよく使う document.getElementById や document.getElementsByTagName って関数ありますよね? DOM 3 XPath

    JavaScript-XPath をリリースしました!さあ、あなたも XPath を使おう!(解説付き) - IT戦記
  • 「再帰→ループ」の変換が大変だった件 - IT戦記

    まず、ループは再帰で表現できる ループというのはすべて再帰呼び出しで表現できる。 たとえば、コレは var array = [1, 2, 3]; for (var i = 0; i < array.length; i ++) alert(array[i]); こんな感じになる (function f(array, i) { if (i < array.length) { alert(array[i]); return f(array, i+1); } })([1, 2, 3], 0); もし、 array がこの目的以外に使われないならコッチのがキレイかも (function f(array) { alert(array.shift()); if (array.length) return f(array); })([1, 2, 3]); ということは、再帰はループで表現できるはず という

    「再帰→ループ」の変換が大変だった件 - IT戦記
  • JavaScript で構文解析: Days on the Moon

    C++ の特徴のひとつである演算子オーバーロード、その粋を極めたのが Boost Lambda (無名関数) と Boost Spirit (構文解析) ではないかと思っています。JavaScript では無名関数が使えるので Lambda に関しては間に合っているとも言えますが、Spirit はそうも行きません。JavaScript 2 で演算子オーバーロードがサポートされるのならチャレンジしてみようかななどと思ってそれきりになっていました。 しかし、一部でパーサブームが起こっているというのを受け、Perl 6 Rules をつらつらと眺めているうち、正規表現のメタ文字を使えば文法定義をきれいに書けるのではと思い至りました。そこで実際に JavaScript でパーサジェネレータを作り、Spirit にあやかって Gin (ジン) と名づけてみました。 文法定義 正規表現リテラルを使うこ

  • 計算機システム実験K-4 - JavaScriptから利用するDOMとXSLT

    JavaScript?とは,FirefoxやIEなど,多くのWebブラウザに搭載されているスクリプト言語である.HTMLにスクリプトを埋め込むことによって,動的なWebページを実現することができる.最新のWebブラウザでは,JavaScript?からDOMやXSLTの機能を利用することができる. 今回の演習で用いるファイルは全て ~amagasa/jikken/06 に置いてあるので,必要に応じて各自のホームディレクトリにコピーした上で使うこと. sample.htmlの解説 sample.htmlをWebブラウザで開くと,表が表示されるはずである.これはXMLデータを元に,XSLTでHTMLデータを動的に生成し,表示している. JavaScript?の詳しい記法は他Webサイトに譲るとして,ここではsample.htmlのポイントを説明する. ○リスト1: sample.html <ht

  • IT戦記 - JavaScript で数式パーサを書いてみた。

    背景 いままで、ちゃんとパーサというものを書いたことがなかったので勉強のためにアレコレ考えながらやってみようと思って、簡単な数式を木にするパーサを書いてみようと思ったのです>< 今回作るパーサの仕様 パースする数式の演算子は二項演算子 + - * / と単項演算子 + - だけ。 括弧とかは使わない。 演算の優先順位は * / のほうが + - より高い。つまり、 1 + 1 * 1 は 1 + (1 * 1) 単項演算子は二項演算子より優先順位が高い。つまり、 - 1 + 1 は (-1) + 1 で、作ってみた! ソースコード filter 関数とか使ってるので、 Firefox only です。 var parse = function(source) { var tokens = source.match(/[-+*/]|[^-+*/\s]+|\s+/g).filter(/^[^\

    IT戦記 - JavaScript で数式パーサを書いてみた。
  • JavaScript < jQuery < Lisp ? - IT戦記

    はじめに 僕は jQuery も Lisp も触ったことがないので、このエントリが言ってることは間違えてる可能性があります>< もし、「それ違うよ」ってのがあれば指摘してくれると嬉しいです>< そういえば 初めて dankogai さんと会ったときに「S 式とアセンブラは両極端にいながら データ==プログラム というところが同じだ」というようなことを言っていた(気がする)。 データ==プログラムというのは当にすごい データとしてプログラムを直接書き換えたりいろいろなことができる。当にすごい。 もちろん、他の言語でも、リフレクションすることや、変数やプロパティに関数を格納することでそれと似たようなことは可能だ。でもそれは、データ=プログラムとは全然違う。 バイトコード書き換えは似ているが、バイトコードの世界がデータ==プログラムなのであってその言語自体はそうじゃない。でも、バイトコードを

    JavaScript < jQuery < Lisp ? - IT戦記
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • JavaScript で n 進数を扱う: Days on the Moon

    2 進数や 16 進数を使いたいというとき、JavaScript では組み込みの機能を利用できます。使えるのは 16 進数だけではなく、2 進数から 36 進数 (0 ~ 9 および a ~ z を使用) まで扱えます。 n 進数文字列から数値への変換 n 進数文字列から数値へと変換するときは、parseInt 関数を使います。第 2 引数に基数 n を指定することで、第 1 引数の文字列を n 進数であると解釈してくれます。n は 32 ビット整数に変換され、その値が 2 未満または 36 を超えるときは NaN が返ります。ただし、n が 0 になるときは文字列が 10 進数表記であるとして解釈されます。 parseInt(10, 36); // 36 parseInt("10", 0x100000000 + 36); // 36 基数が明示されておらず、文字列が 0 から始まっていた

  • 404 Blog Not Found:怠翻 - JavaScriptでありがちな9つのシマッタ

    2007年08月17日01:15 カテゴリ翻訳/紹介Lightweight Languages 怠翻 - JavaScriptでありがちな9つのシマッタ 私自身結構シマッタしちゃうので。 Nine Javascript Gotchas 尻カンマ注意 以下のコードはFireFoxでは動きますが、Internet Explorer (以下IE)では問題になります。 var theObj = { city : "Boston", state : "MA", } 最後にカンマが入らないよう注意しましょう。 浮気なthisは何を見てるやら 以下のコードで、thisは何を指しているでしょうか。 <input type="button" value="Gotcha!" id="MyButton" > <script> var MyObject = function () { this.alertMess

    404 Blog Not Found:怠翻 - JavaScriptでありがちな9つのシマッタ
  • はてなダイアリー日記 - 自分のはてなダイアリーにブログパーツを設置できるようになりました

    はてなダイアリーのヘッダ、フッタ、文にて一部のscriptタグやobjectタグなどを使用可能にし、ブログパーツやブログアクセサリー等をご自分のダイアリーへ設置できるようになりました。これまではセキュリティ上の問題からscriptタグやobjectタグを貼ることができませんでしたが、はてなが許可したものについてはタグを直接貼ることができます。 今回対応したのは以下4つのブログパーツです。 Yahoo!ニュース - トピックスブログパーツ Yahoo!天気情報 - ブログパーツ Google AdSense Google Gadgets ブログパーツを設置するには、それぞれ上記のリンクよりブログパーツ用のコードを取得後、ご自分のはてなダイアリー管理ツールの詳細デザイン設定よりヘッダやフッタの任意の場所にコピーして設置してください。記事の文にも貼り付けることができます。 基的に各ブロ

    はてなダイアリー日記 - 自分のはてなダイアリーにブログパーツを設置できるようになりました
  • AJAXとCSSで作られたシンプルで見やすいプログレスバー「Ajax Progress Bar」

    操作感はAJAXで、画像などはCSSで実装されたわかりやすいプログレスバーです。進捗状況などの表示が簡単にできます。また、クリックする度に10%増やしたり、あるいは減らしたりといったことも可能。いろいろなウェブアプリの開発などに応用できそうです。 詳細は以下から。 WebAppers Simple Ajax Progress Bar with CSS by WebAppers ライセンスはMITライセンスで提供されており、以下から実際に試してみることができます。 Demo http://www.webappers.com/progressBar/ 実際にダウンロードしてみると、prototype.jsを使っており、使用するイメージ画像は2種類。その組み合わせでバーの増減を表現するとは、なかなかいい発想。

    AJAXとCSSで作られたシンプルで見やすいプログレスバー「Ajax Progress Bar」
  • マウスが上に来るとくるりんと文字の色を変えるスクリプト「Scrollovers」

    リンクなどの文字列の上にマウスが来ると自動的にくるりんと回転する感じで文字の色が変化するというちょっと楽しいエフェクトを加えてくれるスクリプト、それが「scrollovers.js」です。 Firefox 2.0、Internet Explorer 7、Internet Explorer 6、Internet Explorer 5.5、Safari 3 (Windows)、Opera 9で動作確認されているとのことで、個人利用でも商用利用でも無料で使用できます。 論より証拠、デモを見た方が理解できます。 デモとダウンロードは以下から。 Scrollovers - A New Way of Linking http://www.scrollovers.com/ 「scrollovers.js」自体の中身がどうなっているかというのは以下からわかります。 http://www.scrollove

    マウスが上に来るとくるりんと文字の色を変えるスクリプト「Scrollovers」
  • Scrollovers - Seu guia completo para o mundo das finanças.

    Ciclo Financeiro: Entendendo as Fases da Sua Vida com Dinheiro

  • 【ハウツー】ゼロからはじめるCorner - Cornerではじめる画像エフェクト (1) ゼロからはじめるCorner - Cornerでコーナーを丸くしよう | パソコン | マイコミジャーナル

    Cornerはライブラリ名から推測できるように画像の角を丸くするものです。Cornerには2種類あり、エフェクト付きで表示できるCornerと、エフェクトは付きませんが、4つの角を個別に丸くするかどうかを指定できるJustCornerがあります。Cornerは他のライブラリを使用しませんが、動作するブラウザは多少限定されます。<canvas>タグが利用できるブラウザかInternet Explorerでないと動作しません。未対応のブラウザでは、表示効果が反映されないだけで特にエラーが発生するわけではありません。指定した画像がそのまま表示されるだけです。Cornerでサポートしている動作ブラウザは以下のようになっています。 Internet Explorer 5.5以降/Firefox 1.5以降/Safari 2以降/Opera 9以降 CornerはこのURLにあるページからダウンロード

  • 論理演算2 (mitsunari@cybozu labs)

    (注意) 1 >> 1をi >> 1や (-i) >> 1に変えてもほぼ同じ. どれもほぼ一定のIEに比べてFxで(-1)>>>1がやたら遅いのはどうしてでしょうか. FxのSTORE_INT()のコードを見ると if (INT_FITS_IN_JSVAL(i)) { \ v_ = INT_TO_JSVAL(i); \ } else { \ ok = js_NewDoubleValue(cx, (jsdouble)(i), &v_); \ if (!ok) \ goto out; \ } となっています. #INT_FITS_IN_JSVAL(j)は -230-1<=j<=230-1なら真のマクロ. つまり,xの値がその範囲を超えるとdouble型に移行し,その値を保存するためにメモリ確保関数が呼び出されます. これが他に比べて10倍以上遅い原因となっています. 同様に var x = 0

  • [NS] お知らせ:「コナミコマンド」を実装しました

    当サイトでは、日よりコナミコマンドを実装いたしました。コマンドはファミコン版グラディウス準拠の「上上下下左右左右BA」です。SFC版グラディウスIIIのように自爆はしません。ご安心ください。 コマンドを打つとサイト全体がパワーアップします。もう一度コマンドを打つと元に戻ります。携帯電話やRSSリーダでご覧の場合は効果がありません。ご了承ください。 特に意味はありませんが、どうしようもなくコナミコマンドを打ちたくて打ちたくて仕方がなくなったときなどにご利用ください。料金は一切いただきません。 著作権を主張するようなモノでもないので、自分のサイトに付けたいと考えてらっしゃる奇特な方はソースを見て勝手にお持ち帰りください。 追記:うまくいかない方は日本語入力をオフにしてください。Windows版のInternetExplorer、Firefox、Operaそれぞれの最新版で動作確認済みです。

  • Javascriptでブロック崩しを作る手順が全公開

    via del.icio.us/popular Javascript Gamerで、BrickslayerというJavascriptで作ったブロック崩しゲームの作り方が公開されている。 開発環境は Firefox + Firebug + お好みのエディタ。 Javascript体は、prototype.jsベースで、スプライト表示、アニメーション処理、キーボード入力、当たり判定、(Flash経由で)効果音などについてそれぞれソースつきで解説されている。 また、ハイスコア記録のほうはPHPによるサーバ側のスクリプトがちゃんと用意されている。 まだアルファリリースということだけれど、ページ上ではブロック崩しゲームがちゃんと動いている。ソースを一括してダウンロードすることもできる。 この記事は移転前の古いURLで公開された時のものですブックマークが新旧で分散している場合があります。移転前は現在

    Javascriptでブロック崩しを作る手順が全公開
  • http://youmos.com/news/accordion_js

  • JavaScript勉強会のまとめ | Blog hamashun.com

    2007-07-12資料公開をした人の章にリンク追加 2007-07-12 sendさんの章に追記 超長いんでショートカットメニュー作りました。 あと、JavaScriptの素人が書いてます。 あちこち間違ってたらごめんなさい。 マークアッパー・デザイナー向けJavaScript入門 マークアップエンジニアHTMLコーダー向け、Yahoo UI Library活用術 Google Gears入門 JSの使いどころ liveプレゼン 猿でもわかる GreaseMonkey Firebugの話 総括 Twitter関連でお世話になっているukstudioが、初心者向けJavaScript勉強会を主催してくれたので、モリモリ勉強してきました! 会場は株式会社ノッキングオン様に提供して頂きました。 ありがとうございます! 僕は行ってなかったんですけど、モバイル勉強会の時もお世話になったそうです。

  • JavaScript勉強会でYahoo UI Libraryについてしゃべりました。 - VTuberになったプログラマーの魂の残滓

    とりあえず資料を公開します。 資料 JavaScript ONでご覧ください。 最初のリンクをクリックするとプレゼンモードで閲覧できます。 プレゼンモードは若干大きい画面が必要になります。 基喋りがメインなので資料だけではわかりづらい&抜けがあるかと思いますが、ご了承ください。 まぁYUIを使うメリットって クロスブラウザ対応がメインだよね。 あとYUIって結構パフォーマンスいいよ。 みんなもっとYUI使えばいいのに!! というわけで 参加されたみなさん(っていうか現在進行中だけど)お疲れ様でした>< 勉強会全体のまとめはUKStudioがきっと書いてくれると思います>< 最後に 会議室を貸してくださった上鍵さんをはじめとしたノッキングオンの皆様ありがとうございました! 会議室を利用したいかたは「ノッキングオンの会議室使いたい!」までこんにちは!こんにちはしましょう!

    JavaScript勉強会でYahoo UI Libraryについてしゃべりました。 - VTuberになったプログラマーの魂の残滓