Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
今回はDOMのイベントの扱いについて書きたいと思います。 SyntheticEvent React.jsではDOMをVirtualDOMとしてwrapしているようにDOMのイベントについてもSyntheticEventとしてwrapしていて、クロスブラウザ対応されています。 I/Fはこんな感じです boolean bubbles boolean cancelable DOMEventTarget currentTarget boolean defaultPrevented Number eventPhase boolean isTrusted DOMEvent nativeEvent void preventDefault() void stopPropagation() DOMEventTarget target Date timeStamp String type この通り、preve
このページの最終更新日:2019年7月4日 JavaScript。主にWebページを作るのに使われるほか、現在ではさまざまなところで活躍しているプログラミング言語です。 このページはJavaScriptの中級講座です。最新鋭ではないかもしれませんが、読み進めれば大抵のものを自分で作れるようになることでしょう。 言い訳とJavaScriptの歴史 / 問い合わせ 最近の更新2017/10/05 全ページを手直ししました。十六章第六回を追加。2017/11/9 十六章第二十一回・十六章第二十二回を追加。2017/12/2 十七章第三回・十七章第四回を追加。2017/12/3 十七章第五回・十七章第六回・十七章第七回を追加。概要コンテンツは第一篇と第二篇に分かれています。 JavaScriptは昔からWebページに動きを与えるものとして用いられてきましたが、第一篇ではそのような、昔からあるJav
東京Node学園 15時限目に参加したときにふと思った疑問について。 Node.jsと非互換なAPI使ったとき、npmにあげていいの?package.jsonのengineとかで書けるのか #tng15— teppeis (@teppeis) 2015, 2月 10 Node.jsの場合 例えばNode.js v0.12系にしか存在しないAPIを使ったパッケージの場合、package.jsonのenginesフィールドにこう書くことで、 { "engines" : { "node" : ">=0.12" } } 適合しないNode.js v0.10でnpm installしたときに警告を出すことができた。逆に削除されたAPIを使っている場合はバージョンの上限も指定できる。また非推奨ながらengineStrictフィールドを使うと警告ではなくエラーにできる。 io.jsでの議論は では、io
Node.js の次のメジャーバージョン 0.12 で yield が使えるようになります。 そのおかげで、JavaScript のコールバック地獄に光が差し込むのです。ああ、さようなら、コールバック地獄。 7 年ごしで実現した yield 2006 年、Firefox 2 のリリースと同時に yield は JavaScript 界に登場しました。随分と前の話ですね。 登場した当時は JavaScript 界隈でけっこう話題になっていました。 JavaScript 1.7 の yield が凄すぎる件について - IT戦記 Latest topics > JavaScript 1.7のyield文ってなんじゃらほ - outsider reflex JavaScript 1.7 の新機能: Days on the Moon 登場したときにはインパクト大きかったものの、結局 Firefox
Intro 最近 Extensible Web の話がたまに出るようになりましたが、なんというかレイヤの高い概念(ポエム)的な話が多い気がしてます。 もう少し具体的な API とか、「それコード書く上で何が変わるの?」って話があまりないので、今日はそこにフォーカスして、 Extensible Web 的な流れの中で整理された API の話をします。 しかし、実際には API が 「Extensible Web という理念で生まれたかどうか」は自明ではないので、 今標準化されている低レベルな API を拾い、それを整理するというエントリだと思ってもらと良いかもしれません。 あまり知られてない API もあると思うので、これを期に「これがあれば、今までできなかったアレが、標準化や実装を待たなくても、できるようになるな」と思ったら是非書いてみると良いと思います。 実際はそれこそが Extensi
x Variants With viewport width set to 380 With viewport width set to device width Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph. Test paragraph.
楽すぎてどうしよう。が最初の感触。まだ3時間しか触ってないけど、もうこれでいいや感が半端ない、深夜2時です。 Angularなのか、Reactなのか、2015年が明けても毎週のように新しいJSフレームワークが出る中で、もう正直どうでもよくなってませんか? でも、これは触って楽しいはず。 Riotって何? Riotは、公式ページに A REACT- LIKE, 2.5KB USER INTERFACE LIBRARY とあるように、Reactを意識して作られた超軽量のUIライブラリで、ビュー部分(コンポーネント)に特化しているのが特長です。Vue.jsとかとも同類です。Riot 1.0も「超軽量」という点で、一時注目を集めました。 そのRiotが、2.0で趣向を変えてJSX的なプリコンパイルの仕組みを取り入れて、ReactとPolymerのいいとこ取りのような感じになっています。ただし、次の
JavaScriptのオブジェクトをJSONに変換する際、必ずと言っていいほど使われるのがjson2.js。 ECMAScript5(JavaScript2)では、json2.jsの実装をほぼ忠実に仕様として再現しており、Firefox3.5やSafari4ではネイティブの実装が利用できます。 例えば、JSオブジェクトをJSON文字列にしたい場合は、JSON.stringify(value, replacer, space)を利用できます。 valueはJSオブジェクト。 replacerは省略可能で、function(key, value)と言うシグネチャの関数オブジェクトを渡します。JS→文字列の変換ルーチンを独自に提供できます。 spaceは、結果の文字列を人間が読みやすくするための、インデントの数を指定します。 その逆に、JSON文字列をJSオブジェクトに復元したい場合は、JSON
#脱jQuery AngularJSやVue.jsでは、DOMの直接操作は推奨されません。 そうなると、jQueryはAJAXでしか使わなくなります。 であれば、AJAX専用のライブラリにまかせてしまって、jQuery依存を外したくなってきます。 というわけで、AJAXだけをやってくれるライブラリとして、SuperAgentを導入してみましょう。 #SuperAgent HTTPリクエストに特化したライブラリです。 Node.jsとブラウザ両方で使うことができます。 作者はExpress, Stylusの開発などで有名なTJです。 #superagentの良さ かわいい。 #ブラウザでの導入方法 まず、下記URLにアクセスし、ファイル名superagent.jsとして名前をつけて保存してください。 https://wzrd.in/standalone/superagent@latest s
HTML5 Conference 2015 でお話した「Polymer で作る次世代ウェブサイト」のスライドです。途中にライブコーディングを挟むため、動画もご覧下さい。http://youtu.be/qzh56Ja1eaw?t=3h20m16s
どうも、イソップです。 Ajaxで読み込んだコンテンツの中にSNSボタンがあったとしても、レンダリングされません。 さぁ、困りました。 でも調べてみたら、表示させる方法がちゃ〜んと用意されていましたよ。 ボタンだけを再読み込み(リロード)したいときにも使えます。 Twitter JavaScript Interfaces for Twitter for Websites | Twitter Developers HTML <!-- 事前にtwitter-widgetの読み込み --> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s
追記 config.js は常に自動生成されるものだと思っていましたが、その認識は誤りだったようです。 そのため、jspm_packages 下ではなく、public ディレクトリに設置するようにしました。 はじめに ぼくは Web の技術が大好き。 はじめに HTML 書いてブラウザで見たら表示されて感動したのを今でも覚えてる。 そんな調子でプログラミングの仕事について、ずっとそこらへんを書いてるけど、 最近の開発、めんどくせーこと多くないですか。 AltJS だー、React + JSX だー。ミニファイだー。依存の解決だー! もちろん、必要なことだし、イケてるのもわかるけど、開発中に毎回 watch すんのもめんどいし...。と思っていた。 救世主 jspm 会社の人がなにげなく紹介していた jspm。 ビルドツールとかの「開発全体がキレイで楽になります!」っていうのが好きなので、試
久しぶりのBackbone.js入門。 Backbone.jsガイドブックを見ながらまとめてますが、 後半は試行錯誤のたまもの。 Backbone.Routerとは Backbone.RouterはサーバーサイドMVCフレームワークでいうところのCにあたる部分、でもありますし、VCでもあります。 Backbone.ViewがDOMを監視するのに対して、Backbone.Routerはブラウザのハッシュ(URL欄)を監視します(厳密に言うとhashChangeイベントとpopStateイベントを監視)。 Backbone.Routerにハッシュとそれに対応する操作を設定しておくことで、 アプリケーション全体のコントローラみたいなふるまいをします。 Backbone.Routerの使い方 何はともあれサンプルコードを。 // @file router_sample.js var Router
こんにちは。クッキーを食べてます、きたけーです。 gulpで、gulp-connectのミドルウェア設定 + proxy-middlewareでリクエストをproxyする術を知ったのでメモ。( https://github.com/AveVlad/gulp-connect/issues/27 ) こんなかんじでできます。 var gulp = require('gulp'); var connect = require('gulp-connect'); var proxy = require('proxy-middleware'); var url = require('url'); gulp.task('connect', function() { connect.server({ root: ['dist'], port: 9000, livereload: true, // /api
こんにちは、Livesense Advent Calendar 2014 14日目です。 皆さん、年末用のゲームはもう決めましたか? おすすめはDragon Age InquistionとMETRO Reduxです。 日々要件が変わっていくアンケートフォーム 今年は業務ツールを作り続ける1年でした。 自分の所属する事業部では日々クライアント様やユーザ様の使い勝手や精度向上のために電話やメール等によるヒアリングを行っています。 と、なるとヒアリング内容をDBに入力するような作業が発生します。 もちろんこの項目は日々ブラッシュアップされていく訳で 新しくこういう項目を入力する場所が欲しいとか、逆にアレはもういらないとか発生します。 その度「じゃあ来季スプリントで検討しますのでチケットを作って下さい! リリース? まぁ見てて下さい。 来月の頭にはなんとかしますよ!!」では現場のスピード感的にも合
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く