JavaScriptIE 7英語版正式リリースで確認。 var span = document.createElement('span'); alert(span.currentStyle); // null span.innerHTML='ABCDEFG'; alert(span.currentStyle); // 取得成功 Opera 9では、どちらでも取得できた。
JavaScriptIE 7英語版正式リリースで確認。 var span = document.createElement('span'); alert(span.currentStyle); // null span.innerHTML='ABCDEFG'; alert(span.currentStyle); // 取得成功 Opera 9では、どちらでも取得できた。
Firefoxのメモリリーク解析ツール:leak-gauge 上記に書かれている通りです。普通のFirefoxリリースビルドで動作しているように見えました(ここにも書いてある)。 まず以下のバッチファイルからFirefoxを起動する。そして、普通のブラウジング操作をする。問題と思われる拡張を使ったりして。 set NSPR_LOG_MODULES=DOMLeak:5,DocumentLeak:5,nsDocShellLeak:5set NSPR_LOG_FILE=nspr.log "C:\Program Files\Mozilla Firefox\firefox.exe" Firefoxを終了すると、バッチファイルと同じディレクトリにnspr.logができてる。内容は、以下のようなもの。 0[2c4928]: DOCUMENT 1db9db0 created0[2c4928]: DOCUM
JavaScriptFirefox、__proto__で、プロトタイプオブジェクトを取れる。 function Cat(){} var p = {}; Cat.prototype = p; var c = new Cat(); ok(c.__proto__ == p); // 同じオブジェクト クラスのプロトタイプをnullにしても、実際に生成されるインスタンスのプロトタイプはnullにならない。 function Cat(){} Cat.prototype = null; var c = new Cat(); ok(c.__proto__ != null); // nullじゃなくなって、通常のオブジェクトのようなものが入ってる ok(c.watch != null); // watchなどの基本メソッドもある 直接、インスタンスのプロトタイプをnullにすることはできる。 var
Firefox、onoverflow/onunderflow、文字の溢れを検出するイベント JavaScript Event Handlers ボックス要素などで、文字の溢れが発生した時にoverflowイベントが起きる。 以下を開き、ウィンドウを小さくし文字を画面外に出すとoverflowが発生する。 逆に、拡げて文字を全て表示するとunderflowが起きる。 <html> <body> <div id="main" style="overflow:auto" >-------------------------------</div> </body> <script> var main = document.getElementById('main'); main.addEventListener('overflow', function(e){ console.log(e); },
JavaScript save the assistants 上記のスライダー、ドラッグを開始して、ウィンドウ外でボタンを離し、再度ウィンドウに戻るとずっと押しっぱなしのおかしな状態になる。これは、たぶんマウスが離されたことを検知できていないため。 WebFXのスライダーは、ちゃんと動く。実装を読んでみた。 Slidebar (WebFX) Firefoxは、文字を選択するようにドラッグを開始すれば、ウィンドウ外でマウスのボタンを外した時にもmouseupが起こせるようだ。これを利用し、見えない文字を選択し、選択状態も見えなくして、スライダーが正常に動作するようにしていた。 簡単なサンプルは以下。スライダに限らず、ドラッグ全般に使えると思う。mouseup以外に、mousemoveなども取れた。 IEの場合は、onlosecaptureイベントを使っていた。WebFX++
JavaScript RHG読書会::東京 入門JavaScript 第四回 - ヒビルテ (2007-04-14) はじめてしりました。 // Firebug出力のショートカット function p(x){console.log(x)} // evalの基本を確認 var context = {a : 50}; // evalのコンテキストオブジェクト p(context.eval("a")) // 50 contextの上で評価 p(eval("a", context)) // 50 入れ替えても同じ // カウンタクロージャーを生成する関数 function counter(){ var num = 0; return function(){ return ++num; } } // 実際にカウンターを作成 var count = counter(); p(count());
情報の入手経路(via)を書けば、次からは他の人もその先を追える。情報そのものよりも、そのソースの方が重要なくらいだ。 おもしろい情報を売り物にする人は、ソースを明かせば、そちらを直接参照する人が増えて情報の希少価値が減るため、あまりオープンにしていないように見える。GIGAZINE、百式、PHPSPOT開発日誌、後藤大地、オレンジニュース*1。これは悪いことではない。それだけ時間を使って得た情報だ。出す人に自由がある、勝手でいい。そういう役割、そういう姿勢、そういう商売もあるだろう。 購読フィードが公開されているといい。されてなくてもいい。 みんなが少し1次情報に近づく。みんなの時間が無駄になる。みんなが見るものが変わる。新しい情報が浮き上がる。 追記subtech - Pink Blossom Diary ( ̄―+ ̄) - ガンタダ そー、カンダタ、カンダタ。見てきたように人生を否定し
JavaScript簡単なようで、とても難しく、情報もあまり見つからなかったので、知らない方はぜひ読んで。 選択範囲の移動でもなく、選択範囲の内容の取得でもありません。選択範囲がテキストエリアの中で何文字目から何文字目に渡っているかをIEで調べる方法です。 まずFirefoxではElement#selectionStart/selectionEndで簡単に取れます。 次に、テキストエリアではなく一行のインプットボックスならば以下で大丈夫です。 setEndPointメソッドは、rangeTo.setEndPoint('EndToStart', rangeFrom)のように使い、rangeFromの範囲をrangeToにコピーします。名前はEndPointですが、始点/終点のどちらの端もこのメソッド一つで動かすことができます。'EndToStart'は、「rangeToの終点を、rangeF
福岡で大企業の3、40代の方々と飲み会。ブログもJavaScriptも全て否定される。 富士通の方には、こう言われた。「ブログに載る新しい情報も、企業の中ではもうずっと前から使っていて、あたりまえになっていることがよくある。技術を専門に研究する人たちもいて、金もある。そして、そこで生まれた知識は社内だけで共有される。」これは、どこの会社も同じで間違ってはいないが、腹が立つ。あと出しじゃんけんで負けた気持ちだ。まあ、街中を自ら裸で歩き、服を着てるやつに怒っているようなもので、八つ当たりでしかないのかもしれない。 ただ私は、最終的に、どちらが豊かになれるかの勝負だと思っている。改めて考えてみれば、それ以外の部分で、いくら負けても悔しくない。最後に、楽しい気持ちでいることができればそれでいいのだ。 ブログを書くことで、良い仕事に参加できた。素晴らしい人にも出会えた。今は、金は儲かっていないが、い
jrunscriptビルトインオブジェクト一覧 (Java 1.6.0 RC b70) JavaScript, Rhino Java 1.6(Mustang)にはスクリプト実行コマンドjrunscriptが添付される。 jrunscriptは、対話的にシェルとして使うことも、スクリプトファイルを読み込み実行することもできる。 Rhinoの、org.mozilla.javascript.tools.shell.Mainクラスに類似する機能を持つ。 簡単な利用方法は以下を参照のこと。 Java SE 6 Mustang じゃじゃ馬ならし Scripting jrunscriptは、簡単なタスクから共通的に利用する基本となる関数群をビルトインオブジェクトとして提供している。 以下、JavaOne発表資料PDFの28ページで紹介されている。 Scripting for the Java Platf
JavaScript #5= {}について、Days on the Moonのnanto_viさんから、詳細な情報を頂きました。いつもいつもありがとうございます。(無断で、コメントをブログ本文に転載してしまいごめんなさいね。) nanto_vi これはシャープ変数(sharp variables)と呼ばれるJavaScriptの拡張機能ですね。循環参照を持つオブジェクトをリテラル形式で書くときなどに用いられます。#n=の後にオブジェクトを指定することで、#n#を使いそのオブジェクトを参照することができるようになります。 var o = #1= { next: { next: { next: #1# } } }; o == o.next.next.next; // true Enumerable.prototype = { map: #1= function () { ... }, col
翻訳 原文:JavaScript: The World’s Most Misunderstood Programming LanguageCopyright 2001 Douglas Crockford. All Rights Reserved Wrrrldwide. JavaScript(別名:Mocha、LiveScript、JScript、ECMAScript)は、世界で最も人気のあるプログラミング言語の一つです。世界中のほとんどのパソコンには、少なくとも1つはJavaScriptインタープリタがインストールされ動いていることでしょう。JavaScriptは、WWWのスクリプト言語としての確かな地位により広く利用されるようになったのです。 しかしその高い普及率にもかかわらず、JavaScriptが汎用的でダイナミックな優れたオブジェクト指向プログラミング言語であることはあまり知られて
JavaScriptテストコードのため書きっぱなしです。以下は、テキストエリアのカーソルの下に、候補窓がついてくるサンプルです。これをちゃんと書き直して、補完と組み合わせてみよう。 サンプル pre要素にborderやwidth/height、font-familyやword-spacingなど全ての属性をコピーしてテキストエリアのクローンを作り、その中のカーソルを真似たspan要素の座標を取得しています。もしかして、eventなどから簡単に位置を割り出せるのかなぁ。 カーソルの位置(文字数)はid:kosekiさんのCross Browser selectionStart/selectionEndをコピーして真似ました。 EditArea(コードが大変な感じ)も、テキストエリア(編集領域)とDIV要素(表示領域)を重ね合わせて色々なことをやってる。大量のspan要素で色づけ。 infog
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く