タグ

javascriptとJavaScriptに関するkitsのブックマーク (544)

  • ブラウザでJavaScriptが動く時代がやってきた! - 葉っぱ日記

    というわけで、昨日から話題沸騰の Javascript PC Emulator すごいですね。JavaScript で書かれた x86 PC エミュレータ上で Linux 動かして、入ってる tcc 使えばそこそこのソースもコンパイルして動いたり。 もとのディスク容量が少ないので、適当な母艦を用意して、こんな感じ で新しいディスクイメージ作って、CocProxy や Fiddler の AutoResponder を使って root.bin へのリクエストをローカルのファイルに差し替えてやれば、好きなファイルも入れられますね。 というわけで、SpiderMonkey を入れて動かしてみました。ブラウザ内でJavaScriptが動くなんてムネアツですね! 手順としては、コンパイルの簡単な SpiderMonkey 1.7 を x86 の32ビットマシンで -static 付きでビルドして、r

    ブラウザでJavaScriptが動く時代がやってきた! - 葉っぱ日記
  • クラスもどきを作るライブラリを作ってみた - hogehoge @teramako

    newを封印して、JavaScriptでオブジェクト指向する(1) - 泥のように newを封印して、JavaScriptでオブジェクト指向する(2) - 泥のように newを封印するべき4つの理由 - 泥のように あたりを読んで、たまにはライブラリ的なものを作ってみようと思い立って作ってみた。上記記事よりJavaScript的なクラスを作成できると思う。 コード https://gist.github.com/972456 jsdoc-tookitの練習としてコメントも入れているのもあって、最初は数十行で済ませるつもりが100行オーバーしてしまった。 一応、Firefox4.0とGoogleChromeで動作は確認したが、ECMAScript 5th 入りまくり、かつ、__proto__を使っているので一般Webではまだ使えないかも。(ダメじゃん) 特徴 特徴というほどでもないけど in

    クラスもどきを作るライブラリを作ってみた - hogehoge @teramako
  • new を不当に貶める陰謀と JavaScript におけるクラスの継承構造の話 - vivid memo

    私は陰謀論者じゃないですし JavaScript の new 演算子が大好きなわけでも大嫌いなわけでもないです。 念のため。 記事は Hiraku さんが書かれた下記記事への言及です。 newを封印して、JavaScriptでオブジェクト指向する(1) newを封印して、JavaScriptでオブジェクト指向する(2) newを封印するべき4つの理由 new 演算子は使うな!? 「newを封印するべき4つの理由」 でも new がいかに糞であるかが書かれていますし、その記事からも言及があるように Crockford さんが書かれた書籍 『JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス』 でも new 演算子は Bad Parts に分類されています。 new 演算子が忌避される理由はいろいろあるみたいですが、Hiraku さんの記事では n

    new を不当に貶める陰謀と JavaScript におけるクラスの継承構造の話 - vivid memo
  • IE の window.resize イベントの問題を回避する - latest log

    IE の window.resize イベントは、いくつかの問題を抱えています。 function onresize() { (何か) } window.attachEvent("onresize", onresize); うっかり無限ループする(無限に再描画が走る) 重い(特にIE6) 解決していきましょう。 無限ループ/無限リドロー問題 resize イベントハンドラの中で、document.body.innerWidht, innerHeight が変化するような操作を行うと、再度 resize イベントが発生し無限ループする現象が発生します(無限リロリロ)。 無限リロリロを回避するために、resize イベントハンドラ内でイベントをデタッチし、再アタッチを繰り返す方法があります(リアタッチ作戦) function onresize() { window.detachEvent("o

    IE の window.resize イベントの問題を回避する - latest log
    kits
    kits 2011/05/13
    「resize イベントハンドラの中で、document.body.innerWidht, innerHeight が変化するような操作を行うと、再度 resize イベントが発生し無限ループする現象が発生します」
  • jQueryプラグイン: Harmonize Text

    親要素の幅に収まるようにフォントサイズを変更するjQueryなJavaScriptコードを、Harmonize Textという名前のjQueryプラグインにしました。FitTextを見て「コード短くて凄い!」とか思ったんですけど、自分の求めているものとはずいぶん違ったので、自分で書いたのをjQueryプラグインにしようというモチベーションが湧きました。 Repository: hail2u/jquery.harmonize-text 内容はリサイズに対応するようにした以外は特に変わっていないので、スクロールバーの有無によってぴったり収まらないバグは直っていません。リサイズは重いし、遅延させた方が良さそうな気がするので、そこら辺のオプションを指定できるようにしようかなと考えています。-1を引数として渡すとでリサイズに対応しない、正の整数ならそのミリ秒だけ遅延させてからリサイズ処理を行うとかで

  • newを封印して、JavaScriptでオブジェクト指向する(1)

    以下はプロトタイプ的継承だけで一通りの機能を実現できる、という一つの例です。もちろん他にも書き方はありますし、newを使うのがよくないと主張しているわけではないです。 (誤解を生みそうな文体が混じっているようなので追記: 2011/5/14) 春ですし、少し初心者向けの記事を書きます。タイトル通り、JavaScriptのオブジェクト指向について。ちょっと長くなるので目次です。 クラス(に相当するオブジェクト)を作る オブジェクトからオブジェクトを作る(インスタンス化) 単一継承 多重継承 privateは諦めましょう 親のメソッドを呼ぶ コンストラクタ instanceofに対応する ダックタイピングのススメ JavaScript標準のオブジェクト指向といえばnewやらprototypeやらを書く必要がありますが、これらは書くのが面倒臭い上に気をつけないといけない点がたくさんあります。Ja

    newを封印して、JavaScriptでオブジェクト指向する(1)
  • 本は死んだ

    The “book” is dead [dive into mark] JavaScript: The Definitive Guide Sixth Edition pdf download ebook - davidflanagan.com オライリー JavaScript(通称サイ)の作者、David Flanaganのブログに関して、Google社員のMark Pilgrimが反論している。 オライリー JavaScript 第5版の作者である、David Flanaganが書いている。 この15年というもの、私は成功した作家の一人であった。自分と家族のい扶持を、の印税収入だけで得ることができたのだ。しかし、出版業界は斜陽であり、私の印税収入も、ドットコムバブルの崩壊よりこのかた、下がる一方である。私は、サラリーマンとしての就職口を見つける必要があると結論した。 15年という

  • 即時関数(function(){ ... })()の別の書き方いろいろ - 泥のように

    JavaScriptでよく使われるコード片に即時関数というものがあります。無名関数を宣言して即実行することで、ブロックスコープの存在しないJavaScriptにおいて擬似的にブロックスコープを再現します。 var a = "global"; (function(){ var a = "local"; alert(a); //local })(); alert(a); //global 一番有名なのはこの(function(){ ... })()の形式なのですが、なぜfunctionの外側にカッコが必要なのか不思議に思ったことはないでしょうか? ためしにfunction(){ ... }()と書いてみると、Syntax Errorが発生します。 なぜfunction(){ ... }()はSyntax Errorなのか JavaScriptにはfunction文とfunction式があって、

    即時関数(function(){ ... })()の別の書き方いろいろ - 泥のように
    kits
    kits 2011/04/25
    「乱暴に書いてしまうと、"function"というキーワードから始まるように書くと文になり、それ以外の書き方をすると式になります」
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    kits
    kits 2011/04/15
    document.URL を document.write で書いていることの問題
  • jQueryでcheckboxがcheckされてるかの値をとる - Webtech Walker

    checkboxがcheckされてるかどうかを判別するメソッドってjQuery側に用意されてないんですよね。 twitterでも色々教えてもらったけど方法としては3つくらいかなー。 https://twitter.com/kyo_ago/status/11685019866 https://twitter.com/songmu/status/11675950113 https://twitter.com/rea/status/11675545507 素のHTMLエレメントから取得 var checked = $('#elem').get(0).checked; せっかくjQuery使ってるのにという感じがいなめない。。これはないかな。 is()で取得 var checked = $('#elem').is(':checked'); これが一番直感的ではある。これでいいっちゃいい気もする。

    jQueryでcheckboxがcheckされてるかの値をとる - Webtech Walker
    kits
    kits 2011/04/12
    $().attr('checked') は一見 $().get(0).getAttribute('checked') と同じになりそう(確認したところ、ちゃんとチェック状態が反映された)。$().get(0).checked の方が何となく安心。
  • typeof null === 'object';// true となる歴史的な理由 | TwitScratch

    typeof null が 'object' なの,実装上の失敗だったとかしらなんだ…… "typeof演算子から学ぶJavaScriptのデータ型の概念と関係する考察のまとめ - 三等兵" - http://j.mp/hdRvmh

  • 「Scriptタグを</body>前に置くだけ」という方法論について | TwitScratch

    最近白黒はっきりつけたいデータがほしいのはScriptタグは</body>の手前に置く論がどこまでまかり通ってるよいものなのかって話。

  • はてなブックマーク開発ブログ

    はてなブックマークのブックマーク数が多い順に記事を紹介する「はてなブックマーク数ランキング」。12月8日(月)~12月14日(日)〔2025年12月第2週〕のトップ30です*1。 順位 タイトル 1位 国立がん研究センターのがんになったら手にとるガイド:[国立がん研究センター がん情報サービス 一般の方へ] 2位 1.証券口座を開く 2.NISA一般枠(NISA成長投資枠)で一括購入 3.積み立.. 3位 「株式会社ガイナックス」について | 株式会社カラー 4位 超面白かった歴史小説&歴史ノンフィクション6選|ふろむだ 5位 残業キャンセル界隈と企業カルチャーの死 - megamouthの葬列 6位 畑中様 いつもSNSでの発信陰ながら拝見しております。 私は今他業種にいるのですが、どうしても漫画を作って生きていきたいと思い、読み切りを賞に投稿しようと考えています。これまでに何か二次創

    はてなブックマーク開発ブログ
    kits
    kits 2011/03/01
    この変更があったのか。JavaScript無効で読めなくなるのは嬉しくない。(「JavaScriptを使わずにブックマークを表示する」を辿れば読める)/ 一瞬「ブックマークを読み込んでいます…」が出るので速くなっている印象もない。
  • node.jsはじめました - KAYAC Engineers' Blog

    はじめまして! 技術部2年目のsugyanと申します。 初めてtech.kayac.comに投稿します! 先日自分のブログで書いた記事が思いのほか好評だったので、これについてもう少し詳しく書いてみようと思います。 node.js+socket.ioを使ったライブコーディングwebアプリを作ってる - すぎゃーんメモ node.jsについて 最近話題の、サーバーサイドJavaScript「node.js」。みなさん触ってみてますか? 「Google V8 JavaScript Engineによるイベント駆動の…」と、どんなものかは知っているものの実際には触っていない、という人がまだ多いような気がします。 僕も昨年の12月くらいにようやく触ってみた という程度なのですが、意外にお手軽で簡単に使えるし面白いので、 「JavaScriptはまだニガテで ><」というヒトでも安心して始められるのでは

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

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

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • さらなる「#!」URL批判 - karasuyamatenguの日記

    このブログはlifehackerを含むgawkerメディア系サイトの#!URLへの移行を批判している。 http://isolani.co.uk/blog/javascript/BreakingTheWebWithHashBangs/ 以下、isolaniとテングの見解をごっちゃ混ぜに紹介する。 lifehacker他のgawkerメディアサイトが数日前に長時間におよびアクセス不能になった。(厳密に言うとページ内のコンテンツアクセス不能になった) #!URLベースのサイトはJavaScriptにエラーがあるとコンテンツが一切ロードせずのっぺらぼう状態になってしまうようだ。 #!について 「#!」は何で呼ぶの? shebangと綴られる。 Hash=# Bang=!の略 発音すると「シバン」といったところか。(ちなみにUnixの#!とは無関係) 以下「#URL」は: サイト内のロケーション情

    さらなる「#!」URL批判 - karasuyamatenguの日記
    kits
    kits 2011/02/12
    「情報公開系サイトでは#!を使わない方がいい」分かり易い指針。
  • new Image() と createElement('img') の違い

    think49 @think49 @azu_re new Image() の特徴。width, height を引数に取れます。HTMLImageElement を必ず返します。new Image() は常にグローバル参照になるので低速です。http://goo.gl/R2EN 2010-10-01 00:40:07 think49 @think49 @azu_re createElement の特徴。名前空間を指定できません。名前空間の存在しないXHTML文書(Documentのインスタンス)で createElement('img') すると Element を返します。 2010-10-01 00:40:24 think49 @think49 @azu_re document がローカル変数に格納されているなら、createElement は高速です。個人的には HTMLDocume

    new Image() と createElement('img') の違い
  • GitHub - mayuki/aircvw: Tiarra IRC Log Viewer (Aircvw: えあくぎゅう)

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - mayuki/aircvw: Tiarra IRC Log Viewer (Aircvw: えあくぎゅう)
    kits
    kits 2011/02/09
    後で見る
  • "w" を "。" で置き換える - Hatena::Let

    /* * @title "w" を "。" で置き換える * @description my bookmarklet * @include http://* * @license MIT License * @require */ document.body.innerHTML=document.body.innerHTML.replace(/w/gi, '。'); Permalink このページへの個別リンクです。 RAW 書かれたコードへの直接のリンクです。 Packed 文字列が圧縮された書かれたコードへのリンクです。 Userscript Greasemonkey 等で利用する場合の .user.js へのリンクです。 Loader @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。 Metadata コード中にコメントで @xx

    kits
    kits 2011/01/16
    最初の javascript: は不要では。/ タグの中の属性名・属性値に含まれる w も容赦無く置換されてしまう。
  • less - jQuery Templatesプラグインが面白い

    jQuery Templatesプラグインが面白い jQuery TemplatesプラグインはjQuery公式のテンプレートエンジンです。元々マイクロソフトのASP.NET Ajax Libraryで実装されていた機能を切り出したものらしい。 jQuery Templates, Data Link, globalization が公式 jQuery プラグインに加わりました - THE TRUTH IS OUT THERE - Site Home - MSDN Blogs 現在は1.0.0pre。そろそろ出るjQuery 1.5には標準で入る模様です。preですがマイクロソフトのCDNが利用出来ます。 配列を渡すと自動的にループして出力されるなど、JSONをそのまま渡して動くように意識されているところが面白いと思いました。 <ul id="name-list"></ul> <script

    kits
    kits 2011/01/07
    「HTML上にテンプレートを置く際の記述もかっこいい」(type="text/x-jquery-tmpl")