« 2015年1月 | トップページ | 2015年3月 »

2015年2月

2015年2月27日 (金曜日)

JavaScriptのタッチ操作ではまる。マウスイベントとタッチイベント、Bootstrapのhoverとか。

Flatkeyboardwebmidibrowser

 iOSでWeb MIDI APIが使えるようになった。Web MIDI Browserによって。ということで、プログラミングを久々に再開。PC上では動くようになったので、iOSで試してみる。反応が遅い。jQueryのせいかと思ったのだけど、そうではなく、.clickで発火させていたからだった。プログラムのタッチ対応が必要。そこでいろいろ試行錯誤。

 参考にしようとしたのは、Ryoya KAWAIさんが公開しているflatkeyboard.js」。以前試した際には、タッチイベントとマウスイベントの両方が発生するWindows 8のChromeでうまくいかず、無理やりな対処をしたのだったけど、今回、改めてチェックすると、それへの対処がすでになされていた。ラッキー。ありがとうございます。しかし、コードを読んでもいまいち理解できず。圧倒的な自分のスキルのなさを再確認。

 自分で作ったコードにあまり手を入れずになんとかできるものがないかと探したら、これを発見。

 【jQuery】コピペOK!タッチ操作とマウス操作の動作定義をまとめる | ユガラボ はてなブックマーク - 【jQuery】コピペOK!タッチ操作とマウス操作の動作定義をまとめる | ユガラボ

 最小限の修正でうまく動いた。すばらしい! ありがとうございます。

 で、動作はするようになったのだけど、表示周りで別の問題が発生。Bootstrapを使ったのだけど、PCとスマホで表示が違う。というか、マウス操作とタッチ操作で挙動が異なる。問題はhover。PCではhoverで色が変わる。マウスカーソルを外すと色が戻る。タッチだと、hoverないのだけど、タッチした時に色が変わる。離しても変わったまんま。別のボタンを押すとそちらが色が変わり、さっきタッチしていたボタンの色が戻る。そんな感じ。むむう。

 ということで、別途classを指定してそれで制御する方向に。しかし、元の擬似クラスhoverが存在するので、うまいこといかない。jQueryではhoverなどの擬似クラスは制御できないということを知る。

 CSSの疑似クラスは非DOM。JavaScript/jQueryで直接操作は不可能。style要素の動的変更で対処せよ - プログラミングとIT技術をコツコツ勉強するブログ はてなブックマーク - CSSの疑似クラスは非DOM。JavaScript/jQueryで直接操作は不可能。style要素の動的変更で対処せよ - プログラミングとIT技術をコツコツ勉強するブログ

 ということで、cssにて:hoverを上書き。hoverで色が変わるのをやめる。というか、hoverした際に、元の色になるように。オリジナルのbootstrapのcssファイルにてを付けずに、別のcssファイルを作成してそれで。今後、なんらかの差し替えがあったときに最小限の修正で済ませられるようにとの目論見。もっとスマートな方法があるんだろうけど、今の自分ではここまでしかできない。

 このほか、ボタンまわりを操作している際にスクロールしない技などもいろいろ調べる。IEのみのやつだとcssで-ms-touch-actionとかtouch-actionで、指定できたりするのだけど、そうでない場合はやっぱりイベントを見てpreventDefaultとかする必要があったりとか。そのへんも今回初めて知った。

 で、これで思った通りの動きになった。イベントリスナー的なものがいっぱいになったので、動作が遅くなってるのかもしれない(あまりわかってない)。コードもだいぶ長くなってしまった。もう少し何とかならないかと、再度、flatKeyboard.jsのコードを眺める。わからない部分をいろいろ検索しながら調べていくと、たまたまこんなのを発見。

 jquery - Javascript click and mousedown conflicting - Stack Overflow

 フラグを用意して、それで判断するという方法。短いコードでサンプルが出ているので、わかりやすかった。あらためて、flatKeyboard.jsを見たら、何をしようとしているかがわかってきた。

 こらからこれでもう一度やってみようと思う。メモ。

続きを読む "JavaScriptのタッチ操作ではまる。マウスイベントとタッチイベント、Bootstrapのhoverとか。"

| | コメント (0) | トラックバック (0)

2015年2月22日 (日曜日)

中野サンプラザ

 なんでも10年連続でMB'sでライブを行っているそうだ。というわけで、毎年恒例。年明け後、1月や2月だったり時には春近くになったりしている、いずれにしても中野サンプラザで行われるライブ。YO-KINGのMCでは変わらぬバンドで10年間、みたいな発言があったが、キーボードは変わってしまった。

 そんな喪失感もありつつ、安定のメンバーによる演奏と、新キーボーディストによるアレンジの変化、そして、最新アルバムのちょっと遅いツアーということもあり、新鮮な体験も交えつつ。それにしても、アルバム収録曲が少ないのではないか。それは来週のほうか。そっちは行けないんだけども。とか。

 取っていたと思っていたチケットがとれておらず、ライブ1週間前に取ったら2回の4列目のわりと真ん中寄り。子供客も何人か。音が大きすぎるらしく、耳をふさいだりしていた。確かに子供には厳しい環境だ。

続きを読む "中野サンプラザ"

| | コメント (0) | トラックバック (0)

2015年2月20日 (金曜日)

レノボのPCにSuperfishというマルウェアがプリインストール

 Lenovo(レノボ)のPCに危険なマルウェアがプリインストールされていたというのが個々数日大きな問題となっている。

 上記サイトにはプリインストールされている機種がリストアップされている。

 現在、我が家でおもに使用しているマシンの2台がレノボ製。そのうち、昨年末に購入したMiix 2 8が該当していた。で、コントロールパネルのプログラムをチェックしてみると入っていない模様。チェックサイトにアクセスしても大丈夫だという。まずは一安心。

| | コメント (0) | トラックバック (0)

2015年2月19日 (木曜日)

コードの修正

 以前書いたこれ。「Amazonの長すぎるURLを短くするやつ作った」。漏れてたパターンがあったので、修正した(たぶん漏れなんてまだまだいくらでもある)。

 書いた時は「今頃?」みたいなことを言われ、まあ、言われるよな、とは思ったものだ。それもこれも記録だ。

 というか、自分用のツールだし(逆ギレ)。

| | コメント (0) | トラックバック (0)

2015年2月14日 (土曜日)

シーナさん

 シーナ&ロケッツのシーナさんがなくなったそうだ。野宮真貴さんのツイッター経由で知る。

 もうだいぶ前だけど、ライブの翌日、仙台駅で握手してもらった時のことを思い出した。不躾な若者の突然の申し出に笑顔で応えてくれたことを。

 ご冥福をお祈りします。安らかに。

 

続きを読む "シーナさん"

| | コメント (0) | トラックバック (0)

2015年2月 9日 (月曜日)

GoogleドライブでのJavaScriptファイルのホスティング問題、解決?

 GoogleドライブでWeb公開したJavaScriptファイルがエラーとなり、読み取れなくなる問題(Googleドライブ上に公開したJavaScriptファイルにアクセスするとProvisional headers are shownって言われる)。ほかに事例がないかと思い探してたら、見つかった。これで解決するかも。

 該当する事例はTwitter経由で発見。

 Drive Notepad (Google+)

 Does Google Drive no longer allow JavaScript file referencing from other website?

 Bloggerで使うためのCSSファイル、JSファイルをアップロードして使っている人が多い模様。で、CSSファイルは従来どおり問題ないが、JSファイルはアクセス不能(動作しない)状態となっているという。ウチの状態と同じだ!

 解決のための手順はこんな感じのようだ。

  • いったん、JSファイルをローカルにダウンロード
  • ダウンロードしたファイルはGoogleドライブから削除
  • ダウンロードしたローカルファイルの拡張子をtxtに変更
  • 名前変更したファイルを再度アップロード
  • アップロードしたファイルの拡張子をjsに変更

 これでうまくいった。ファイルをアップロードし直すと、ファイルのアイコンが変わる。だめになってたjsファイルは無地の青い書類なのだけど、名前変更してアップロードしたファイルは中身がある書類(なんか書かれてるみたいな感じ)になる。

Jsfile_on_googledrive

 上の画像の1番下がアップロードし直したやつ。これはちゃんとロードされる。その上の3つはアクセスできない状態のやつ。

 うまく動作するかどうかはこのアイコンで判別できそうだ。

 ファイルのダウンロードは、チェックボックスをチェックした上で、上のメニュー「その他」-「ダウンロード」で。複数ファイルの場合はZIP圧縮される。アップロードはエクスプローラーのフォルダから画面へのドラッグ&ドロップで(いずれもWindows 8.1とIE11でテスト)。

 とりあえず、これでいけそう。ウチの場合はこれですべて以前と同じ動作ができるようになった。

続きを読む "GoogleドライブでのJavaScriptファイルのホスティング問題、解決?"

| | コメント (0) | トラックバック (0)

2015年2月 6日 (金曜日)

Googleドライブ上に公開したJavaScriptファイルにアクセスするとProvisional headers are shownって言われる

 いつからなのか? 複数のサイトで共用するJavaScriptのスクリプトファイルが動作していない。Chromeの開発ツールで見ると、Statusはcanceled。でもって、「Provisional headers are shown」って言われる。

 数日前までは正常に動作していたはずなんだけどなあ。

 Googleドライブ側の設定を見てもわからず。新たにフォルダ、ファイルを作って共有設定にしてもだめ。

 原因究明に数時間を費すもまったく手がかりなし。英語がわからないからというのもあるんだけども。クロスオリジンっぽい話なのかもしれないけど、同じフォルダに置いてあるHTMLから呼び出しても結果は同じ。ロードすらされない感じ。AJAXなんて使わずdocumen.write()だけでもだめだし。

 Googleドライブを公開用に使うのはいろんなところで紹介されてて、これはいい、と思ったんだけどなあ。

 ということで、わかったらまたなんか書く方向で。

続きを読む "Googleドライブ上に公開したJavaScriptファイルにアクセスするとProvisional headers are shownって言われる"

| | コメント (0) | トラックバック (0)

2015年2月 4日 (水曜日)

With POCKET MIKU & MIDI Designer, effects go crazy

 ポケミクのエフェクトを操るMIDI Designerのレイアウトについて質問が来ていたので回答してみる。英語での質問なので、翻訳サイトで英語にしてみる。だいぶ自信がない。

This entry is an answer to a comment to the following article.

iPhoneでポケミクのエフェクトを楽しめるやつ作った - MIDI Designerレイアウト公開

When you adjust some parameters they go crazy, change the setting about the following item.

v.pr 4(Feedback Delay)
v.pr 5(Feedback Level)
v.pr10(Dry / Wet)

Design - Advanced tab -Send on Release Only

Mididesignersendingrelease


続きを読む "With POCKET MIKU & MIDI Designer, effects go crazy"

| | コメント (0) | トラックバック (0)

« 2015年1月 | トップページ | 2015年3月 »