Redirecting from /projects/jsnes/ to https://jsnes.org/
Redirecting from /projects/jsnes/ to https://jsnes.org/
画面がUnloadされる前に発生するイベント。 ちなみに onLoad は画面が表示された時(表示完了時)、onUnload は画面がUnload(画面遷移、×ボタン押下など)された時。Unloadされた時、なので画面自体はもう落ちて(遷移して)います。 画面遷移する前、または落ちる前に何かしたい場合に、onBeforeUnload イベントを指定します。 よくあるのが、登録画面などで「登録してないけど遷移していいの?」的な確認でしょうか。 記述方法は <BODY onBeforeUnload="XXXX"> で、XXXXには javaScript のファンクション名か、または javascript:alert("test"); などの様に直接スクリプトを記述します。 指定するファンクションの内容は、特に制限はありません。 また、onSubmit などと同様、return 値を受け取ること
モーダルダイアログを使うメリットとしては、他のウィンドウが操作できなくなり、 モーダルで表示されている画面のみ操作が可能、という効果があります。 たいていはJavaScriptの関数を使ってモーダルダイアログを生成しますが、 ここではCSSを使って、同じ画面内で擬似的にモーダルダイアログのような 効果を出す方法を紹介します。 modal.html 元ネタはJavaScriptライブラリのLightbox JSですが、CSS/JavaScriptともに 最低限の記述に抑えて、少し加工しています。 内容は、通常の画面と擬似モーダル画面をstyle.displayで切り替えているだけです。 擬似モーダル画面は、CSSでレイアウトや重ね合わせを制御しています。 同じ画面内でモーダルのような効果を出すため、 別ウィンドウで表示するモーダルとは使い方が大きく違ってきますが、 使いどころによっては便利で
Microsoft® Internet Explorer® 7 が出たので、無謀にも IE7 sp1 を待たずに導入してみた。 IE7のリリースノートによると、IE6での、window.opener に何か入れて window.close() で「このウィンドウを閉じますか?」の警告メッセージ表示のダイアログを出さない方法は、IE7では機能しなくなったらしい。 ということで、昔、Netscape Communicator 4 の Navigator を "Close Window?" の確認の表示を出さずに閉じる(ウィンドウ位置や設定が保存されないという意味で、Navigator を“落とす”という感じになる)のに使用した、 window.open('','_top').close(); をIE7で試してみた。 Netscape4 と同じく、IE7 でも「このウィンドウを閉じますか?」の確
JavaScript でいろいろな日付の計算関係をまとめてみました。前回の日付関係のまとめエントリの JavaScript版です。 日付の単位について 基本的なことですが、一応まとめておきます。 1秒は1000ミリ秒 1分は60秒 1時間は60分 よって 1時間=60分=3600秒=3600000ミリ秒 1日=24時間=1440分=86400秒=86400000ミリ秒 現在時刻の取得 まずは、最もよく使う処理です。 //今日の日時を表示 var date = new Date(); document.write(date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate() + " " + date.getHours() + ":" + date.getMinutes() + ":" + date.get
接続してきたブラウザの画面サイズを元にHTMLのレイアウトを調整したい場合に使用するJavaScript。 今回は、textareaを画面サイズに応じて調整したかったので、実装しました。 材料(コード)を揃えます ブラウザ画面サイズを取得して、対象となるHTML要素のサイズを設定する... ために必要な材料(コード)を用意していきます。 画面サイズを取得するjavascript関数 function getBrowserWidth() { if ( window.innerWidth ) { return window.innerWidth; } else if ( document.documentElement && document.documentElement.clientWidth != 0 ) { return document.documentElement.clientW
全てのブラウザで有効ではないですが、window.onbeforeunloadイベントを使用することで、ブラウザの戻るボタンをある程度制御することが可能です。 コードはこんな感じ(prototype.jsを使ってます)。 <script type="text/javascript" src="prototype.js"> </script> <script type="text/javascript"> <!-- Event.observe(window,'beforeunload', checkBrowserUnload,false); function checkBrowserUnload(e) { window.event.returnValue = "ページを移動すると、今までの作業が破棄されます。よろしいですか?"; } //--> </script> メッセージは以下のように表
ページ遷移前に確認をする、onbeforeunload - 実用 windowのonbeforeunloadハンドラで、Event#returnValueに値を入れると、ページ遷移直前にユーザーに確認ダイアログを表示することができる(んだって)。ネタとしては古いかもしれませんが、ページ移動時にダイアログで確認する際のonbeforeloadイベントの使い方。 ページ移動時の確認ダイアログをどうやるんだったか、うろ覚えで、ちょっと調べるのに手間取ったのでメモ。 次のように書いておけば、ページ移動時に確認ダイアログを表示して移動するかどうかを確認できます。 window.onbeforeunload = function(event){ event = event || window.event; event.returnValue = ' ページ移動時の確認文言 '; } Firefox2と
JavaScriptを勉強しているとオブジェクトとはなんぞや?ということがわからなくなってきます。選択肢が増えれば増えるほど。 JavaScriptには、同じように見えて、実は同じではないデータがあります。それらのオブジェクトについて、区別して説明が付けられるように、自分なりに考察してみました。勉強中のアウトプットなので、ここで書いた内容は事実とは大きく外れているものかもしれません。とにかく不明瞭な部分を自分なりに理由づけしたかっただけです。 サンプルコードを試される場合は、FirefoxのFireBugにあるコンソールに貼りつけて実行するか、Safariの開発ツールにあるコンソールに貼りつけて実行してください。それがわからない方は console.log の部分を alert に置き換えて確認してください。 話がややこしくなるので、今回はプロパティしか扱っていません。 名称の定義について
基本的には、ここの内容をそのままGitHubに登録してpagesの設定をすれば良い。例えば「Reveal.js、Markdown、Githubでスライドを作成する。」が良くまとまっている。だが1つ謎の事象が起きて悩んだ。 index.htmlの中に、直接markdownを書く時には良いのだが、以下のようにdata-markdown属性でmdファイルを指定すると、不可思議な動作をする。 <section data-markdown="./md/firstpage.md" data-separator="\n---\n$" data-vertical="\n--\n"> <script type="text/template"> </script> </section> 最初にcommit/pushした時は表示されるものの、変更してcommit/pushしても変更が反映されなかったり、そもそも
まさにあのAAが似合う、そんな代物だ。Webサイトでコネクション数を極力減らすための技術として、DataスキームURIが知られている。これはhttpからはじまるようなURLの代わりに、data:からはじまる書き方で直接データをbase64で表記して流し込んでしまう手法だ。 できると思う? 対応しているブラウザは限られるが、仕様自体はRFC2397として定義されているのでIE7などでも利用できるようになっている。これを使えば画像のみならず、こんなことができてしまう。 今回紹介するオープンソース・ソフトウェアはjsPDF、JavaScriptで生成するPDFライブラリだ。 まさに無茶だ。jsPDFはJavaScriptだけでPDFを生成してしまう試みだ。何をばかなことを、とお思いだろうか。であれば実際に試してみると良い。日本語は残念ながら使えないが、英語であればちゃんとしたPDFが生成されるこ
End script and style with newline? Support e4x/jsx syntax Use comma-first list style? Detect packers and obfuscators? (unsafe) Preserve inline braces/code blocks? Keep array indentation? Break lines on chained methods? Space before conditional: "if(x)" / "if (x)" Unescape printable chars encoded as \xNN or \uNNNN? Use JSLint-happy formatting tweaks? Indent <head> and <body> sections? Keep indentat
Microsoft Internet ExplorerでFirebugのようにJavaScriptをデバッグできるプラグイン「DebugBar」が23日、新しいバージョンアップ5.2が公開された。DOM解析や、JavaScriptのデバックといった従来の機能のほか、IETesterでURLを表示させることもできるようになった。 JavaScriptはブラウザさえあればどこでも実行できる手軽なプログラミング言語だが、いざ本格的なアプリケーションを開発しようとするときに、デバッガやIDEといったプログラミング環境が十分ではないようだ。けっきょくブラウザで実行することから、Firefoxのアドオン「Firebug」がよく使われている。また最近では、Google ChromeやSafari 4のように、オフィシャルで開発環境が用意されているブラウザも登場している。 そんな中で最大の難関となるのが、
Using algorithms to solve problems can be a wonderful option when the result must be 100% exact or if each decision must follow the same method. A different method might be required if performance is the most important consideration. Approaching a problem the proper way can often be the key to finding a solution that works. An algorithm is a term used in psychology to describe a few of these probl
jQuery 1.3が登場! jQueryはPrototype.jsと並んで最もポピュラーなJavaScriptライブラリの1つで、DOMの要素や属性に対する操作をメソッドチェーンで流れるように記述できるのが特徴だ。最近では日本語での情報も増えており、Webアプリケーションの開発で利用しているという開発者も多いのではないだろうか。 2009年1月、jQueryの最新のメジャーリリースとなる1.3がリリースされた。新たなCSSセレクタエンジンSizzleの導入やリファクタリングによる処理の高速化など、メジャーリリースに相応しい内容となっている。本稿ではjQuery 1.3での主な変更点や新機能を紹介する。 大幅な高速化を実現 jQuery 1.3は1.2系と比べ、大幅な高速化が実現されている。CSSセレクタエンジンがより高速なSizzleに置き換えられているほか、要素の追加やoffset()
スーパーマリオブラザーズといえば「世界一売れたソフト」として有名な ファミコンゲーム。 任天堂の名前を世界に知らしめた名作だ。不朽の名作がJavaScriptに よって再現された。「スゴイ!」の一言に尽きるので、まずはお試しあれ。 マリオのファビコン(Favicon)もイカしてるぞ。 「Enter」キーを押すことでゲームが開始される。左右の矢印「←」「→」キーで 前進と後退ができる。「A」キーがダッシュ、「S」キーがジャンプ。くれぐれも お家に帰ってから遊ぼう。仕事中に夢中になってるのを上司に見つかってリストラ されても責任は取らないからね! Javascript Super Mario Bros + Complete Level 1 and 2 + Map Editor By Guillermo Bruchmann
指定したパターンによるDate->String、String->Dateの変換を行うライブラリです。 ソース Ver 1.1 : 2008/04/02 dateformat.js サンプル 「パターン」を入力し、「フォーマット」ボタンを押下すると、現在時刻を指定パターンによる文字列に変換します。 「パース」ボタンを押下すると、「文字列」を「パターン」に沿ってパースし、Dateオブジェクトに変換します。 使い方 本ライブラリを読み込んだ状態で、パターンを指定してDateFormatクラスを生成し、format(Date->String)/parse(String->Date)関数により変換を行います。 var dateFormat = new DateFormat("yyyy/MM/dd HH:mm:ss SSS"); var str = dateFormat.format(new Date
通常外部リンクなどを別窓で開く際に、target="_blank"を使うと思うのですが、コレは非推奨となっているので、もうちょっと美しく別窓で開くにはどうしたらいいか? と何度か考えた事がありますが、適当にぐぐると、JavaScriptを使うものが何点かあるけど、ソレもイマイチスマートじゃない。 例えば下記で紹介されているような。 http://allabout.co.jp/internet/hpcreate/closeup/CU20040118A/ コレはコレで今までの問題を解決するにはいいのかなーと思うのですが、ボクが個人的に求めているのはもうちょっとスマートなやり方。 今まで、この問題に関して深く調べた事が無かったのですが、雲のむこうの人からこういう方法もあるよ。 って教わったので、今回はそのやり方を紹介いたします。 取り合えず、何だかんだ言って結局JavaScriptを使うわけです
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く