Janko at warp speedのエントリーから、フォームの入力時に、ラベルと入力箇所をハイライトして、より分かりやすくするスクリプトを紹介します。 Building a better web forms: Context highlighting using jQuery デモ デモでは残念ながら、labelは使用されておらず、class名「row」のdivで囲まれた範囲にハイライトが適用する仕様になっています。 ハイライトする箇所は、ラベルと入力箇所のほかにも、そのグループ全体をハイライトすることも可能です。 Context highlightingはjQueryのプラグインのため、動作にはjquery.jsが必要です。 また、上記と同じエフェクトを実装するスタイルシートが別サイトで紹介されています。
こんにちは。前回に引き続き、JavaScriptでUIを実装する方法を紹介していきます。 要素のドラッグ ウェブアプリでよく使われるインタフェースのひとつ、ドラッグを実装してみます。ドラッグを使用するケースは幾つかありますが、今回は投稿用フォームをドラッグで移動できるようにするという使い方を想定してみます。 投稿フォームで入力する際、そのページのコンテンツを見ながら入力したいということはよくあります。フォームを好きな位置に移動できればそれが実現できます。 ドラッグの基本HTML <div class="js-drag" id="js-drag-1"> <form class="js-drag-form" onsubmit="return false;"> <textarea></textarea> <input class="submit" type="submit" value="送信"
CreateJSで提供される5つのツール 今回は、4月に公開されたばかりの「CreateJS」を紹介します。CreateJSはHTML5を利用したリッチコンテンツ作成のためのJavaScriptライブラリ/ツール集です。著名なFlashエンジニアであるGrant Skinner氏が開発しており、ActionScriptに似た使用感を実現している点が大きな特徴と言えます。 CreateJSでは、次の5つのツールが提供されています。 EaselJS TweenJS SoundJS PreloadJS Zoe それぞれ、以下のような機能を備えています。 EaselJS EaselJSはHTML5のキャンバス上にコンテンツを描画するためのJavaScriptライブラリです。提供されるAPIがActionScript風になっており、Flash開発者ができるだけ違和感なく利用できるように工夫されてる点
はじめに 前回までは、Node.jsについての基礎的な説明からnpmによるパッケージ管理まで、紹介してきました。今回から、いよいよNode.jsを使ったWebアプリケーションを実装していきます。前々回に単純なHTTPサーバの実装についてコードとともに紹介しました。あれをみるとわかるとおり、nodeが提供するHTTPサーバの機能はプロトコルに沿ったローレベルなものになっています。例えば、リクエストが来たら、そのURLパスに従った処理を実行するために、リクエストURIの解析から実装していかなくてはなりません。そういったことが簡単に定義して処理を書けるWebアプリケーションフレームワークがnodeにも存在します。本連載では、その代表格のExpressを使って実装してみたいと思います。 Expressのインストール Express(Express.jsと表記されることが多い)は、非常に手軽にnod
今回はWebアプリケーションを作ったことがない方でも分かるようクロスサイトスクリプティング脆弱性を解説します。 クロスサイトスクリプティングとは? 初めてクロスサイトスクリプティングと聞いて、どのような問題なのかすぐに理解できる人はいないと思います。サイトAに記述されたJavaScriptプログラムがサイトB上で実行されるために発生することが問題とされたので、「サイト間をまたがるスクリプトの実行」問題として、クロスサイトスクリプティング(XSS)と名前が付けられました。この命名では直感的に分かりづらい、サイト間にまたがらずHTMLメールなどにJavaScriptを挿入する攻撃でも同じ効果が得られることから、「JavaScriptインジェクション」とも呼ばれるようになっています。 図1 簡単なクロスサイトスクリプティング 例1 簡単な直接攻撃 掲示板サイトに投稿されたデータをエスケープ処
さて、これまで10回以上に渡って続けさせていただいたこの「Meteor完全解説」ですが、今回が最終回となります。「完全解説」を銘打っておきながら、説明できていない機能を残していることが大変心苦しいのですが、どうかご容赦ください。 ただ前回までの連載により、Meteorのエッセンスとも言える部分についてはほとんど説明を終えたといっても良いかと思います。これまでの記事を振り返ってみても、やはりMeteorは非常に先進的なフレームワークです。Webアプリ開発にかつてないような生産性をもたらすだけでなく、「リアルタイムWeb」の時代をぐっと手元に引き寄せるような手応えを感じます。 今回は最終回ということで、Meteorのさまざまな機能を振り返りつつ、Meteorという先進的なフレームワークが指し示す、Webアプリケーションの未来を探ってみたいと思います。 Nodeを利用した「フルスタックフレー
JavaScriptを使って、写真の顔を認識、抽出して、その範囲を取得する方法を解説。Face Detectionを使います。
はじめに この話はGuillermo Rauch氏が書いたhttp://rauchg.com/2014/7-principles-of-rich-web-applications/ という記事の翻訳です。許可を得て翻訳しています。 ここ最近Web業界を賑わしているSingle Page Applicationの必要性、HTTP2/SPDYといった技術、リアクティブプログラミングやIsomorphicデザインという考え方について包括的にまとめたすごく良い記事になっております。 最初に断っておきますが、ものすごく長いです。各セクションがわかれているので時間がない方はセクションごとに書かれたtl;DRとまとめを読むだけでも参考になるかと思います。 ちなみに明日のNode学園祭には、本記事を記述したGuillermo Rauch氏が見えるので、そこで詳しく聞いてみるのもいいのではないでしょうか。
通常、透過処理をした写真画像を使用する際のフォーマットはPNGを使用することが多いと思います。これを写真画像にJPEG、その上にマスクのPNGを使用してトータルの容量を軽減する方法を紹介します。 デモでは、PNGのみで127KB、JPEG with PNGで42KB、と約1/3容量が軽減しています。 ;(function() { var create_alpha_jpeg = function(img) { var alpha_path = img.getAttribute('data-alpha-src') if(!alpha_path) return // Hide the original un-alpha'd img.style.visiblity = 'hidden' // Preload the un-alpha'd image var image = document.cre
Update [14/11/11]: Chromium での実装が M40 からあるそうなので、末尾に引用追記させていただきました。 [14/11/12]: この記事を書くにあたって、色々なかたにレビューや助言を頂いたのですが、謝辞などが一切抜けてました、本当にすいません。追記しました、ご協力頂いた方々本当にありがとうございました。 WHATGW Fetch Spec WHATWG のメンテナンスするドラフトに Fetch Spec が追加されました。 もうすでに日本語訳もあります、すばらしい。Fetch Standard 日本語訳 この仕様には二つのことが定義されています。 "Fetching": Fetch するとは何か? の定義 "Fetch API": fetch() の定義 後者の定義に基づく fetch() という DOM API の実装も始まっています。(詳細は後述) しかし
JSON は、「JavaScript Object Notation」の略で「ジェイソン」といいます。
Earlier this year, we collaborated with our friends at @Iconfactory on a set of 872 beautiful emojis so Tweets containing emoji characters would look as sharp on the web as they do in mobile apps. Now we’re pleased to announce that these emoji are available as an open source library to the developer community at large. Since we’ve gotten many requests to use our emoji in various projects, as of to
Last year I created a demo showing how CSS 3D transforms could be used to create 3D environments. The demo was a technical showcase of what could be achieved with CSS at the time but I wanted to see how far I could push things, so over the past few months I’ve been working on a new version with more complex models, realistic lighting, shadows and collision detection. This post documents how I did
2014/10/18に開催されたFrontrend in Kanazawaの資料を公開しました。 つらつらと、この時の補足など書いていこうかと思います。 RSSのチェックはどういうタイミングでやっていくか 今回の講演で質問もされたのですが いつRSSなどのチェックをしているのか? という問題ですが、実は自分も明確な答えはまだ無い感じです。というのもライフスタイルに合わせる…という感じにどうしてもなってきてしまうからです。 スライドにもあるように、自分は通勤時間や、ちょっとした空き時間にスマホでチェックだけはするというようになっていますが、このフローは現在のスタイルでやっているからというだけです。例えば、通勤が車になっていたらどうしても、その時間にチェックはできなくなってきます。 が、その場合は例えば、就業中に一仕事終えて気分転換がてら、5~10分とかでぱぱーっとチェックだけしておくみたいな
Tim Bray氏のブログ記事を解説したものです。Tim Bray氏はXMLの生みの親であり、最近はGoogle Developer AdvocateとしてAndroidの普及に務めています。Twitterをはじめ、最近のWebサービスにて「twitter.com/#!/timbray」のようにURLに「#!」というhash-bang(shebang)が含まれるのをよく目にしますが、Tim氏はこの流行に批判の意を示しています。 hash-bangを含むURLはAjaxを利用するために考えられたしくみです。#以降は単なるフラグメントとして処理されるため、サーバは#より前のURLを解釈しコンテンツを出力します。そしてブラウザにてJavaScriptが#以降を解釈し、以降のパスに相当するコンテンツをAjaxにて取得しコンテンツを書き換えます。このしくみができた背景は、Ajax後のコンテンツをSE
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く