IE,FireFox,NN,mozillaではブラウザ上でワープロソフトのようにリッチテキスト編集を行うことができる。この機能の使い方をまとめる。 1.リッチ編集モードの有効化 ブラウザのリッチ編集モードを指定するにはdocumentのdesignModeをOnにする。 1.1 FireFox,NN,Mozillaの場合
IE,FireFox,NN,mozillaではブラウザ上でワープロソフトのようにリッチテキスト編集を行うことができる。この機能の使い方をまとめる。 1.リッチ編集モードの有効化 ブラウザのリッチ編集モードを指定するにはdocumentのdesignModeをOnにする。 1.1 FireFox,NN,Mozillaの場合
当エントリーは多くの誤りを含んでいます。参考にされる場合は最後の追記部分まで含めて読まれるようにお願いします。 それなりに慣れているはずのプロのプログラマでも、このような勘違いや大失態をすることがあるという教訓として残すために、エントリーの削除や修正はせずに追記のみに留めておきます。 JavaScriptで、配列に要素を追加するメソッドに、push、unshift、splice、concatがある。このうち、配列の後方に要素を追加するのは、(要素を好きな場所に追加可能なspliceを除くと)pushとconcatの二つである。この二つのメソッドは破壊的/非破壊的の違いがあれ、似たような挙動を示す。
JavaScriptには構文体系を深く記した本がないため、トライアル&エラーしながら真摯に勉強し、それを個人的備忘録を兼ねて公開しています。今回は「値渡しと参照渡しの罠」について。 概要:数値型, 文字列型, 論理型 は「値渡し」、配列, オブジェクトは「参照渡し」。果たしてこの定説は本当でしょうか。関数型まで検証することで明らかにしたいと思います。 では、本題。1 〜 3 は当たり前のことですが、4以降の説明で意味を持つので省略せずに書くことにします。 1. 数値型の検証 var num_parent = 3; var num_child = num_parent; num_parent = 5; alert(num_child);出力結果:3 2. 文字列型の検証 var str_parent = "もともとの文字列"; var str_child = str_parent; str_
Chrome Experiments is a showcase of work by coders who are pushing the boundaries of web technology, creating beautiful, unique web experiences. You'll find helpful links throughout the site for creating your own experiments, and you can also explore resources like WebGL Globe and our workshop of tools.
javascript, asjQuery のソースコードを見ていて面白いのがあった。 function add(a, b){ addImpl(b && a, b || a); } function addImpl(a, b){ // ... } 理解するためには、論理演算子を詳しく理解する必要がある。論理演算子詳細JavaScript(というか ECMAScript)の論理演算子は、評価結果が true/false で返される訳ではなく、結果が確定した時点で評価した値が返される。まずは、|| を試してみよう。 alert(2 || 0); // 2 alert(2 || 3); // 2 alert({} || null) // [object Object] alert(0 || 3); // 3 alert(0 || 0); // 0 alert(0 || undefined); //
2007年04月25日12:00 カテゴリLightweight LanguagesBlogosphere Digest - 今日にでも使うべきJavaScriptの7つのテクニック 良質の記事だけに全訳したかったのだけど、時間もないので紹介と抄録。 Digital Web Magazine - Seven JavaScript Techniques You Should Be Using Today サンプルコードは、適宜書き換えてあります。 1. Branch when possible - 分岐はなるはやで これは実例を見た方が早いでしょう。クロスブラウザー対応のaddListener()を考える。機能だけを考えれば、以下でOK。 function addListener(el, type, fn) { if ( window.addEventListener ) { el.addE
Mastering Javascript Arrays Believe it or not, the very first version of Javascript shipped without Arrays. JavaScriptの配列を極める! JavaScript の配列特集のページがありました。 配列の基礎〜配列の各メソッドの紹介&使用例、配列TIPSなど、JavaScript の配列について理解を深めるのに役立ちます。 JavaScriptist の配列関連ページ JavaScriptの配列 配列を連結した値を得る - Array.concat 配列の長さを得る - Array.length 配列を文字を挟んで文字列化した値を得る - Array.join 配列の最後の値を得る - Array.pop 配列の最後に値を追加 - Array.push 配列を逆順に並替え - A
以下のエントリへの反応です。 new function() { //どうのこうの } は、 (function(){ this={} //どうのこうの return this })(); みたいなことしてるんだろうか。 http://d.hatena.ne.jp/gnarl/20070628/1183009662 this はキーワードなので変数としては使えないのですが、使えるとするならば、ほとんどそれに近い挙動だと 思います。 一つだけ違うのは this がどういうプロトタイプを持つかということです。 new function() { arguments.callee.prototype.hoge = 'hoge'; alert(this.hoge); // hoge }; (function() { var _this = {}; arguments.callee.prototype.
以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -
id:cheesepie:20070131:1170172709 最近は、こういう風に JavaScript を勉強する人が増えていてとても嬉しいです ^^ id:cheesepie さん頑張ってください! で、ちょっと配列と連想配列の使いかたが違うようなので、エントリーを書こうと思いました。おせっかいだったらすみません>< ! やっぱり、このへんが JavaScript の難しいところのひとつなのだろうか。 ということで、 JavaScript の配列と連想配列の違い いってみよおー 連想配列とは JavaScript では連想配列は一番シンプルなオブジェクトのことである。つまり、すべてのオブジェクトは連想配列である。 以下のすべての連想配列はまったく同じものである。 // 1 var obj = { hoge: 'hoge' }; // 2 var obj = { 'hoge': 'h
if 〜 in なんてあったのね。。。 知らなかった! 使い分け 3番めが if in オブジェクトが真か偽か if (obj.property) { // ... } オブジェクトにプロパティがあるかは置いといて undefined ではないことを確かめる if (typeof obj.property == 'undefined') { // ... } オブジェクトにプロパティがあるか。 if ('property' in obj) { // ... } オブジェクト自体(プロトタイプを含まない)にプロパティがあるか if (obj.hasOwnProperty('property')) { // ... } まとめ いっぱいあるなあ。 大抵、一番上のでいいがいろいろ細かい条件があるとたまにどれも必要になるときがある。 いままでは、if in を知らなかったので困ったこともあったなあ
ECMAScript 5 is on its way. Rising from the ashes of ECMAScript 4, which got scaled way back and became ECMAScript 3.1, which was then re-named ECMAScript 5 (more details)- comes a new layer of functionality built on top of our lovable ECMAScript 3. Update: I’ve posted more details on ECMAScript 5 Strict Mode, JSON, and More. There are a few new APIs included in the specification but the most inte
Javascript Input Mask v1.1download What? Fill in the form above. Notice how not only do the (standard html) <input type="text/password/submit/button" ...> boxes have rounded borders, but also notice what happens when you type a password in - a html masked input field. And check out the code - it's neat. As a developer you just need to include mask.js, slap a class on each input box you want to ski
先日の僕のFirefoxアドオン(XPCOM)でHTTPプロクシを実装するの記事の発展系として、piroさんがローカルプロキシっぽいことをローカルプロキシを立てずにやろうとして挫折したことのまとめというすばらしくためになる記事を書かれています。 この記事の中でpiroさんは「特定のURIにアクセスしようとした時だけ、あらかじめ定義しておいたルールに従って別のリソースを返す」ことを実現するために、3つのやり方を提案しています。 ローカルプロキシを実装して、その中でリダイレクトするやり方。 http-on-modify-requestイベントのタイミングでリダイレクトするやり方。 nsIContentPoilcyのshouldLoad()の中でリダイレクトするやり方。 で、結論として2,3で目的を達成するのは難しそう、とのことなのですが、僕がかねてから考えていた4つ目のアイデアがあって、ちょっ
JavaScriptのnewは危険だよんとCrockfordの本にもありますが、あんまり意味がわかってなかったのですこし調べてみました。 そしたら John Resig - Simple “Class” Instantiation に全て書いてありました(英語に自信無いけどたぶん)。 単純にやると以下のようになります。 function User(first, last){ this.name = first + " " + last; } var user = new User("John", "Resig"); user.name // "John Resig" しかしこの方法だとnewを忘れた場合に問題があります。thisにグローバルオブジェクトがセットされるためグローバル変数を上書きしてしまいます。 var user = User("John", "Resig"); user //
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く