サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ニコニコ動画
hakuhin.jp
FileReader クラスを使用すると、Blob や File オブジェクトが保有するバッファの中身に、読み取りアクセスを行う事ができます。
<html> <body> <div>あいうえお</div> <span>かきくけこ</span> <div>さしすせそ</div> <script type="text/javascript"> <!-- // ------------------------------------------------------------ // セレクタにマッチするエレメントを1つ取得 // ------------------------------------------------------------ var element = document.querySelector("span"); // ------------------------------------------------------------ // 出力テスト // ----------------------
// ------------------------------------------------------------ // Blob オブジェクトを作成(中身が空) // ------------------------------------------------------------ var blob = new Blob(); // 出力テスト console.log(blob); console.log("type:" + (blob.type)); // "" console.log("size:" + (blob.size)); // 0 // ------------------------------------------------------------ // 適当なバッファを用意 // ---------------------------------
ArrayBuffer は物理メモリが確保できなければ問答無用で失敗しますが、Blob は柔軟に動作します。ブラウザによっては、ローカルストレージを駆使してでも超巨大なバイナリの取り扱いを試みます。
Ajax を利用すると、「非同期通信」を行い外部から最新のデータを取得しながら、「ダイナミックHTML」で HTML の内容をリアルタイムに更新する事ができます。
// ------------------------------------------------------------ // クリップボードにデータを格納する関数 // ------------------------------------------------------------ function ClipboardSetData(data){ var body = document.body; if(!body) return false; var text_area = document.createElement("textarea"); text_area.value = data; body.appendChild(text_area); text_area.select(); var result = document.execCommand("copy");
// ------------------------------------------------------------ // 適当な文字列 // ------------------------------------------------------------ var str = 'alert("実行された");'; // ------------------------------------------------------------ // × JavaScript として評価実行されるので危険 // ------------------------------------------------------------ setTimeout(str , 1000);
// JavaScript ファイルの URL アドレス var url = "http://example.com/script/worker.js"; // Worker オブジェクトを作成する var worker = new Worker(url); // 出力テスト console.log(worker);
// TextDecoder オブジェクトを作成 var text_decoder = new TextDecoder(); // 出力テスト console.log(text_decoder); // ------------------------------------------------------------ // TextDecoderOptions オブジェクトを用意する // ------------------------------------------------------------ var text_decoder_options = { fatal : false, // 符号化の違反を確認するか?(エラーモードの有無) ignoreBOM : true // BOM 情報を考慮しないか? }; // --------------------------
// ------------------------------------------------------------ // エグゼキューター関数 // ------------------------------------------------------------ function ExecutorFunc( resolve , reject ){ console.log("非同期処理の開始"); // ------------------------------------------------------------ // 1 秒後に実行される関数 // ------------------------------------------------------------ setTimeout(function(){ if(1){ // 成功時 resolve("
複雑な入れ子構造になっている DOM ツリーを、あたかも一体化した1つの要素であるかのように、取り扱えるようになります。
これにより、追加面の文字(U+10000 ~ U+10ffff)が含まれる場合、サロゲートペアを考慮する必要があります。
Cross-Origin Resource Sharing(CORS)は、HTML5 世代の仕様です。
如何なる問題、損害が発生しても、Hakuhin は一切責任を負いません。 100% 利用者の自己責任とします。 Hakuhin はバグ修正や質問等のサポートの義務を負いません。 不具合があれば報告して頂けると嬉しいです。
基本的なエンコード部分には、英数字『 a-z、A-Z、0-9 』と加算記号『 + 』、スラッシュ『 / 』の、合計 64 文字を使用します。
// 現在のローカル時間が格納された、Date オブジェクトを作成する var date_obj = new Date(); // 出力テスト console.log(date_obj.toString());
// ------------------------------------------------------------ // フルスクリーン表示が可能か調べる関数 // ------------------------------------------------------------ function DocumentIsEnabledFullscreen(document_obj){ return ( document_obj.fullscreenEnabled || document_obj.webkitFullscreenEnabled || document_obj.mozFullScreenEnabled || document_obj.msFullscreenEnabled || false ); } // ----------------------------
Internet Explorer の互換モードには、「IE5 Quirks モード」と「Quirks モード(最新)」の2つがあります。
// コンソールオブジェクトを取得 var console_obj = window.console; // 出力テスト console.log(console_obj);
<html> <body> <iframe src="http://example.com/" width="500" height="300" ></iframe> </body> </html>
// ヒストリーオブジェクトを取得する var history_obj = window.history; // 出力テスト console.log(history_obj);
バッファに入出力アクセスするには、別途 ArrayBufferView(ビュー) のサブクラスを使用する必要があります。
// タッチイベントに対応している if(window.TouchEvent){ // イベントリスナーに対応している if(document.addEventListener){ // ------------------------------------------------------------ // タッチすると実行される関数 // ------------------------------------------------------------ function TouchEventFunc(e){ // TouchList オブジェクトを取得 var touch_list = e.changedTouches; // 中身に順番にアクセス var i; var num = touch_list.length; for(i=0;i < num;i++){ // Tou
Array クラスの実体は、連想配列ですが、TypedArray クラスの配列は、純粋な配列として機能します。
// ------------------------------------------------------------ // MathAdd という名前の関数を宣言する // ------------------------------------------------------------ function MathAdd ( a1 , a2 ){ // 第01引数と第02引数で渡された数値を合計し、結果を返す return a1 + a2; } // ------------------------------------------------------------ // MathAdd という関数を実行する。(第01引数に 5、第02引数に 9 を指定し、結果を得る) // -----------------------------------------------
// ------------------------------------------------------------ // XML 文字列を用意する // ------------------------------------------------------------ var text_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + '<container>\n' + ' <element0 attribute="value0">テキストA</element0>\n' + ' <element1 attribute="value1">テキストB</element1>\n' + '</container>'; // -----------------------------------------------------
次のページ
このページを最初にブックマークしてみませんか?
『HAKUHIN's home page -ゲームプログラミング講座-』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く