移転しました http://please-sleep.cou929.nu/20100929.html
移転しました http://please-sleep.cou929.nu/20100929.html
活躍の舞台をどんどん広げているJavaScript。本連載では、JavaScript関連書の執筆でおなじみの古籏一浩氏が、最新の活用Tipsから今後注目のAjax/JavaScriptライブラリーの解説まで、“楽しくできて役立つネタ”をお届けします。
HTML5とともにW3Cで標準化が進められているDOM APIの1つに「Web Storage」があります。Web StorageはCookieと同様にローカルディスク上にデータを保存する機能で、Cookieに比べて「有効期限がない」「データサイズの制限がない」といった特徴があります。ローカル上に永続的にデータを保存できるので、フォームの入力内容の保存やゲームのプレイ履歴の記録、各種サービスの状態保存など、などさまざまな用途に利用できます。 Web Storageにはローカルストレージとセッションストレージがあり、永続的にデータを保存する場合はローカルストレージを、ブラウザーを開いている間の一時的な保存であればセッションストレージを使います。ローカルストレージ、セッションストレージとも同じメソッドを持ち、記述方法に違いはありません。 今回のJavaScriptラボは、HTMLフォームに入力
Emacs23.2からJavaScriptのためのメジャーモードとしてjs-modeが組み込まれている*1。auto-mode-alistに("\\.js\\'" . js-mode)が既に登録されているので*2、拡張子が.jsなファイルを開けば自動的にjs-modeとなるはずだ。 このときファイルを実行する方法として2つの選択肢が*3ある。 1つはEmacs上でJavaScriptのインタプリタを走らせる方法で、もう一つはFirefoxに実行させる方法。どちらが必要かは場合によるので*4、両方使えるように設定する。 Ejacs Ejacsというのは全部Emacs Lispで書かれたとかいうJavaScriptインタプリタ。 Google Code Archive - Long-term storage for Google Code Project Hosting.からzipを落としてき
The WebKit Open Source Project ChromeやSafariのエンジンであるWebKitの開発版にHTML5のscript要素での策定が進められているasyncとdefer属性の実装が追加された。Running scripts in WebKit - Surfin’ Safariにその旨が記載されているとともに、asyncやdeferを指定した場合にどういった動作が実施されるのかと、デモンストレーションの結果が紹介されている。asyncとdeferの効果を知るサンプルとして参考になる。 ブラウザが次のような外部のJavaScriptファイルを指定したscript要素に到達すると、そこでパース処理を一旦停止し、指定されているJavaScriptファイルのダウンロードを実行する。ダウンロードが完了したらパース処理を実施し、ふたたびHTMLのパースを再開する。ダウンロ
The Search for a Trusted 메이저사이트: A World of Thrills, Security, and Immersive GamingdErsPOId - December 1, 2023In the dynamic world of online entertainment, the quest for finding a trustworthy 메이저사이트, or major site, is akin to navigating through a labyrinthine digital jungle. Much like the adventurers of old scouring for hidden treasures, modern-day netizens are on the lookout for that one platform
2010/09/26(日) に京都で Kanasan.JS jQuery コードリーディング #2 が行われる(告知ページ)。みんなで jQuery のソースコードを読むイベントで、今回が2回目だ。参加者募集中です。 jQuery はファイル1つだけのライブラリなのですごい環境とかもってなくても大丈夫なんだけど、読むうえで参考になるサイトとかをまとめてみた。この辺の準備をしておくと理解が深まると思う。 ソースコード http://code.jquery.com/jquery-1.4.2.js http://github.com/jquery/jquery まずは jQuery のソースコードを取ってこないと始まらない。今回はバージョン 1.4.2 を使用する。jQuery の公式サイトから圧縮していないコードをダウンロードしよう。 それと、jQuery ソースコードは Git で管理されて
はじめに 2010 年 9 月 15 日を持ちまして、サイボウズ・ラボを退職いたしたました。 報告も兼ねて、久しぶりにブログを書いてみたいと思います。 (写真はゆうすけべーさんです) この会社に入って、たくさんの学びと思い出がありました。 その一つ一つをまとめていければ、素晴らしい記事になるのかもしれませんが、僕は文章が苦手です。 ですので、うまく退職のエントリを書き上げることができません。 言葉にできない。そんな感じです。 なので、このエントリはサイボウズ・ラボやサイボウズ本社の仲間たちへのありがとうの気持ちをこめて、自分らしく最後まで JavaScript のことを書きたいと思います。 サイボウズでの最後の仕事 僕にとって、サイボウズでの最後の仕事は「JavaScript で新しいユーザーインタフェースを作ること」でした。 そして、その中で始めて複数人による大規模な JavaScrip
なぜ通常のXMLHttpRequestにはクロスドメイン制約があるのに、JSONPではクロスドメインでリクエストを送信できるのか?不思議に感じたので、ちょっと調べてみた。 クロスドメイン制約は「ブラウザ上で実行されるJavaScriptは同じドメインにしかリクエストの送信やクッキーの編集を行えない」という制限である。 なぜこのような制限が必要になるのか。クロスドメイン制約がなかったらどうなるかを思考実験してみよう。ブラウザ上では、いくつものサイトからダウンロードしてきたJavaScriptが同時に実行されることは珍しくない。また、悪意のあるページにアクセスしてしまい、悪意あるJavaScriptを実行してしまうことも、十分に起こり得る話である。間違えて変なページにアクセスしたら致命的な問題が起きました、ではまずいので、ブラウザではJavaScriptができる事にかなりの制限を与えている。X
user-agentを参照せずに、IE6, 7, 8, 9の各バージョンを判定するスクリプトを紹介します。 var ie = (function(){ var undef, v = 3, div = document.createElement('div'), all = div.getElementsByTagName('i'); while ( div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->', all[0] ); return v > 4 ? v : undef; }());
valueOfとtoStringメソッドの水深43cmぐらいの深さの話 - 三等兵のもう少し深いお話。コメント欄に書こうかとも思ったけど、最近ブログ書いてない気がしたのでちゃんと記事にしてみる。 まずは問題です。次のコードを実行したときにtrueかfalseのどちらがalertされるかそれぞれ当ててみてください。 var date = new Date(); var date_string = date.toString(); var date_value = date.valueOf(); alert(date == date_string); alert(date == date_value); true, true false, false true, false false, true (難しい問題ではないと思いますが、)この問題の答えは最後に。 続いて、もっとシンプルな問題です。
だいぶ前に、 var o = { i: 10, valueOf: function() { return this.i; } } のようなコード(もっと使い道のあるコード)を見たことがあった。そのときはvalueOfっていうとオブジェクトのメソッドて印象しかなくて、ほとんど使ったことがなかったからおっぺけぺーのおひゃーとスルーしましたが。 これはたとえば、 alert(o > 20); // false と扱うことができる。なんでオブジェクトが数値と比較できてるんだと思ったけど、 alert(+o); // 10 数値として扱えた。 これはvalueOfメソッドによるもので、valueOfメソッドというのはオブジェクトを基本型などに変換する(数値型が多い)ときに呼び出され、オブジェクトを基本型として扱う場面では内部で自動で呼び出される。 ということで、この場合数値として振舞うべきだぜブラン
getJsonで楽天のAPIをいろいろ。IEでは「";"がありません」とか言われる。そんなエラーメッセージじゃわからんよ、ということでFirefoxのFireBugでチェック。「Invalid label」とか言われる。 jQueryでJSONPをgetJsonするなんてことは初めてなので、わからないことばかり。1つ1つ調べていく。 数時間たって結論。 楽天からのレスポンスが間違っている! 「callBack」パラメータを指定すればJSONPで返ってくるはずが、サーバー側でエラー(内部エラーとかいう文字列が入っている)の場合はそれが守られない。 Statusが「Success」のときはJSONPなんだけど、「Sever Error」とかの場合はそうなってない。具体的にいうと、callBackで指定した文字列+カッコでくくられない状態で返ってくる。エラーのステータスを返すレスポンス自体が想定
八木 悠 概要 Javascript では通常ドメインを乗り越えるアクセス,即ちクロスドメインなアクセスが認められていない.そこで GET リクエストで JSONP を使ったり,Flash を使ったりして,その制限を乗り越える方法が幾つか有る.実際に jQuery ではクロスドメイン GET に JSONP を用いる事が出来る. しかし,クロスドメイン POST は jQuery の機能としては用意されていない.幾つかその解決策は存在するのだが,特定の URL に POST でアクセスするだけなので,フォームとインラインフレームを用いて POST リクエストを送る方法を利用することにした.この方法は,リクエストを投げっぱなしになるのでリクエスト結果を取得できないという問題が有るが,その代わり実装が単純明快である. 早速 jQuery のプラグインを書いてみた.少々冗長な気もするが,気にし
Google MapsのIE6~IE7で発生する事があるエラー。 APIローダーからV3を呼び出そうとしていたときに出た。 メッセージ: 'document.body' は Null またはオブジェクトではありません。 ライン: 11 文字: 5 コード: 0 URI: http://maps.google.com/maps/api/js?key=notsupplied&v=3&callback=google.loader.callbacks.maps&hl=ja&sensor=false ライン11に確かにdocument.bodyがある。 appendChildしようとしているが出来ないからエラーになっているようなので headからbody内にGoogleMapsのscriptタグを移したら直った。 どうもクセでheadに入れたがってしまうんだけど、body閉じタグ直前に置くのが無難み
Firefox web browser - Faster, more secure & customizable a quick note on JavaScript engine components ★ Mozilla Hacks - the Web developer blogにおいて、最近追加された技術も含めてFirefoxで利用されているJavaScript技術が簡単にまとめられている。FirefoxはJavaScriptの処理性能を改善する目的で新しくJaegerMonkey / Nitroを導入したが、従来の技術も含めて若干の誤解が見られるという。簡単に関係を説明することで、こうした誤解を払拭する狙いがある。 ニトロでブースト - Firefox、新しい高速化技術を導入 Firefox 3.6のJavaScript高速化技術まとめ 紹介されている技術をまとめると次のとおり。
Windows Internet Explorer 9 IE9は、IE8までのIEで採用しているJavaScriptゲッターメソッド__defineGetter__およびセッターメソッド__defineSetter__をサポートせずに、ECMAScript 5仕様で定められているゲッターメソッドおよびセッターメソッドの表記のみをサポートすることになった。ブラウザごとに若干動作が異なる従来の記述をサポートすることは、将来の互換性に禍根を残すというのがその理由だ。 IE9、JavaScript仕様と現実の落としどころ IE9、IE8、IE7 - クロスブラウザコーディングテクニック たとえばIE8では次のようにコーディングしていたものは myObject.__defineGetter__("p", function() {/* getter function body */}); myObje
えんじに🐈にゃーん🍓🫐🍅🌽🍈🍇🦝 @uupaa うん。$ ってネームスペースとしては全く効率的じゃない。というか疲れる。 PHP やると疲労感を感じるのは $ の使用を強要されてるせいもあるとおもう 2010-09-06 04:42:00 えんじに🐈にゃーん🍓🫐🍅🌽🍈🍇🦝 @uupaa $ はそもそも人が利用する識別子として許されてないってのもデカイです(ECMAScript規約違反)。 著名ライブラリ達は平然と $ を利用していますが、あれルール違反だから 2010-09-06 04:44:25
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く