エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

JavaScript

HTML要素に適用するコードを再利用する、Alpine.jsで。

要素に適用するコードを再利用する、Alpine.jsで。 初期のリリースでは、HTML の中にデータやコードを埋め込むスタイルだった Alpine.js ですが、v3.0 以降はその分離と再利用のためのしくみが整備されてきているようです。 今月になって新しいしくみが提供…

選択したファイルをプレビュー表示する

ファイルをアップロードするときに利用する input タグ <input type="file"> ですが、ファイルを選択した時点でブラウザ上で画像データを取得することできることを利用してプレビュー表示させる方法です。 過去に使ったことがあったんですが、件のコードにしか情報がなかったの…

Alpine.js が 3.x になり、いっそう利用しやすくなった

記事にするのが遅くなりましたが、6 月に Alpine.js が 3.0 にメジャーバージョンアップしました(ちなみに 2021-08-29 現在の最新は 3.2.4)。 alpinejs.dev 色々と改善されていますが、個人的に一番大きな利点はロジックをグローバルスコープに公開しなく…

PDF.js を使って PDF をブラウザに表示するための覚書

仕事で PDF をブラウザのページ中に埋め込んで表示したいことがあり、そのときに PDF.js を利用しました。 のちのち再び使いたくなったときのために、骨格を抜き出してまとめたものです。 サーバには Elixir の Phoenix framework を使っていますが、ほぼ静…

iTunes の CD の情報を JavaScript で設定する

CD を購入した時に、iTunes 上で情報を設定するのが面倒だったのでスクリプトでなんとかしようと思ったらなんとかなったので、そのメモ。従来から AppleScript で iTunes を操作することはできましたが、AppleScript は不得意なため Yosemite から使えるよう…

Evernote のノートのタイトルに住所を付け加える

先日、Evernote Food のサポートが終了するので… - エンジニアのソフトウェア的愛情 という記事を書きました。その最後に 同じ要領で notes[i].longitude(), notes[i].latitude() を使えば位置情報を取得できるので、住所を設定することもできると思います。…

Evernote Food のサポートが終了するので…

Evernote Food のサポートの終了が決まりました。 Evernote Food サポート終了のお知らせ - Evernote ナレッジベース 不満な点はあるにはあったもののこの 2 年半ほど使い続けていたので、少々残念に感じているところ。代替手段を探していたのですが、日時場…

this is not global

めも。 A = 10; console.log('A = ' + A); console.log('this.A = ' + this.A); console.log('global.A = ' + global.A); 実行結果。 $ node what-is-global.js A = 10 this.A = undefined global.A = 10 ただし。 $ node > A = 10 10 > this.A 10 > global.…

JavaScriptでEvernoteを操作する、ただしYosemiteにかぎる

OS X が Yosemite になって、標準で JavaScript を扱えるようになりました。使い方について、こちらの方が詳しくまとめられています。 知らないうちにMacがシステム標準でJavaScriptで操作できるようになってた (JXA) - Qiita JavaScript で AppleScript と…

8つのボール問題・CoffeeScript篇

自主練。とにかくまずは手を動かして、自分で書いてみるところから。 お題に使わせてもらいました。 8つのボール問題、さらに書き直し(JavaScript手習い) - 虎塚 CoffeeScriptはシンタックスハイライト効かねぇ…。 _ = require './lib/underscore-min.js' …

Google Chromeでは(Ajaxで)ローカルファイルにアクセスしようとするとエラーになることについて、他

ちょっとつまずいたので記録。経緯。 http://textile.thresholdstate.com/でマークアップしたテキストをウェブブラウザで表示できないかと考えた(性懲りもなくまた無節操にいろいろ手を出してます)。 Textileを解釈してHTMLに変換してくれるJavaScriptのス…

What is this?

一応JavaScriptで動くコードを書けたというのに、thisがいまひとつ理解できていなかったので、いろいろためしてみた。 使った環境は。Mac OS 10.5 + Safari 4です。 一番外側のスコープから見えるthisはなにか? document.writeln(this); 結果。Windowだった…

evalできなかった本当の理由

IE6でevalが失敗すると昨日のエントリで書きましたが。 解決しました。あまりにしょうもなくてわざわざこうして書くのも恥ずかしいほど。昨日、evalが失敗するといって書いたコード。あれは失敗しないコードでした。失敗するコードはこう。 var s = "{ foo: …

なぜevalがエラーになる?

Q:JavaScriptの一番難しいところは? A:Microsoft Internet explorerでもまともに動くようにすること …と、思わずTwitterでツイートしてしまいました。 自宅ではMac+Safari、ときどきFirefox、という環境でJavaScriptのコードを書いて、一通り動くようになっ…

JavaScriptでチャットを書いていた

…で、いまもまだ書いている。書き終わらない。やりたいことに技術がまだついてきてない。精進しないと。 2010/04/26時点はこちら、最新はこちら。 必要なもの。 クライアント側: JavaScriptとCookieが使えるブラウザ サーバ側: PHP4 or PHP5 SQLite3 php-s…