JavaScript

INPUT要素のhidden属性のdefaultValueの元の値はどこにあるんだよ!?

…探せなかった。https://stackoverflow.com/questions/2559616/javascript-true-form-reset-for-hidden-fields 確かにhidden属性を使わず、text属性にして表示させなければ問題ないか。 結局、使用する前にhidden属性のinput要素をmapを使って初期の状態を保…

JavaScript: MutationObserver は、SELECT要素の変化を捉えられないのか…

困ったな。連動できると思っていたのに…。この数時間が無駄になった。 <head> <meta charset="utf-8"> <title> MutationObserver は、select要素の変化を捉えられないのか?</title> <body> <select> <option value="0">0 <option value="1">1 <option value="2">2 </select> <script> let observer = new MutationObserver (m => console.log (m[0])), optio…</body></meta></head>

表示状態(スタイルシート)を簡単に一気に変える方法を思いついた。

例えばAjaxなどを使って webアプリを作っている時に、表示状態を切り替えたい時がある。 今までの方式は、スクリプトで対象の要素を集めて此処に(非)表示などを行っていた。それは面倒だった。 一気に切り替える方法はないものだろうか?考えた。 cssText …

デスクトップ(Windows)からのドラッグ&ドロップで画像データをテキスト化(base64)する

画像をデータベースに登録するときにPHP側で変換処理するよりもやっぱりJavascriptで行なえば楽だろうな?と思ってみたものの、最近時間がなかった。 ちょっと暇になったので作ってみた。 やっぱりコーディングに時間がかかってしまった。ほぼ徹夜になっちゃ…

配列の値を被らないようにランダムに取り出す(ループしても被らない)

被らないように配列から値を取り出す とある業務の日誌をコンピュータで記録させているのだが、その時に音楽を流してほしいと要望があった。 数曲の中からランダムに選曲と再生するのではあるが、全曲が流れたあとリセットし直すとまれに最後に流れた曲が最…

FORM 要素の部品の要素の値を object型にして返す

必要になって書いてみた。プログラム書くのに時間がかかりすぎ。 使い方のメモ let f0 = new ExpForm (document.forms[0]), f1 = new ExpForm (document.forms[1]), obj = f0.getValue (); //form0からform1に複写 f1.setValue (obj); FORM要素の対象となる…

霊柩車の運賃計算のプログラム 探しても見つからない!ので書いた。

霊柩車の運賃計算プログラム ついでに「霊柩運送規約」と「運賃適用方」も掲載(必要ないけどね) 計算方法は、個々の運送業者の該当地区の運輸局に届け出た書類によって違うと思う。 ちょっと解釈が微妙なので不都合があったなら修正します 「〜を超えて」…

余計な空白(テキストノード)を取り除く

td 要素の中に input 要素をギリギリまで広げて使いたい場合などに余分な空白が出ないために以下のように記述する必要があった <td><input type="number" name="hoge"value="0"> このようにタグを続けて書いていた。 これをスクリプトで余分な空白を取り除く(テキストノードその物の削除)ようにした。 こ</td>…

う〜〜ん、同じ匂いがする

datalistのoptionの削除はできますか? https://okwave.jp/qa/q9340809.html 同じ奴だな。 明日は手術 だんどん俺の体はサイボーグ化していく。

クローンすべてをクリックしたときにリスナーが実行

クローンすべてをクリックしたときにリスナーが実行 https://okwave.jp/qa/q9323157.htmlせっかく書いたのに、投稿しようと思ったらブロックされていた。もう見た人にあげる。好きなようにして! 3行で収まるんだよ!ES6をなめるな! Mapを使ってみた。Arra…

WebGL 教科書の写経、その3

平行光源によるライティング <meta charset="utf-8"> <title>WebGL</title> <style> body { background: black; } </style> <body> <canvas width="512" height="512"</canvas> <script id="vshader" type="x-shader/x-vertex"> attribute vec3 position; attribute vec3 normal; attribute vec4 color…</canvas></body></meta>

WebGL 教科書の写経、その2

複数モデルのレンダリング https://wgld.org/d/webgl/w016.html 教科書にあるマトリクスのライブラリなのだが、使い方がオブジェクト指向ではなく、たんなるマトリクス関数の集合体だけの使い方のように思えてきた。 そのライブラリは少しずつ自分用のライブ…

WebGL の事始め

https://wgld.org/d/webgl/w014.html まずは、移植から。いきなりオブジェクト指向で脳内変換。 なんで素直に写経するのを嫌うのだ?! > 俺 マトリクスのライブラリーも、後ほど見直すこと。 <meta charset="utf-8"> <title>WebGL</title> <style> </style> <body> <canvas width="1024" height="512"</canvas> <script id="vshader" type="x-shader/x-vertex">…</canvas></body></meta>

new URL 知らなかった…いつの間に。

浦島太郎かっ!>俺ちなみにそれを1行で配列にしたいのだけれど。^^;

こんな質問者への対応は、アフリカ難民募金と同じでその難民の自立を妨げるのと同じ!

もう何十年も募金と支援してるのに終わらないのはなぜなのか気づけよ! まぁ回答者側がアレだからな。 俺以外の回答者にでも言ってくれ。 質問の表題は、その不明瞭な事象を的確に表現すること 今後同じような悩みを抱えるであろう人のために、質問を撒き散…

三角形の3Dマッピングの勉強でメモ

{ class Matrix { constructor (a = 1, b = 0, c = 0, d = 1) { this.matrix = [a, b, c, d]; } getInverse () {//逆数 let [a, b, c, d] = this.matrix, z = a * d - b * c; return z ? new Matrix (d / z, -b / z, -c / z, a /z): null; } multiplication …

六曜のカレンダーを表示する(書きかけ)

六曜の結果なのだが、今月は正確に表示されないらしい。 見直す羽目になる。http://jsdo.it/babu_baboo/EP6b <meta charset="utf-8"> <title>六曜を計算</title> <style> caption { font-size: x-large; text-align: center; } caption label { margin: 0 1em } th { height: 2em; background: #aea; } t</meta>…

OKWaveに続く質問にうんざり。

よくもまぁもう答えなければよいのに。 ちょっとテスト

マウスで3Dモデルを回転させる。その3

http://jsdo.it/babu_baboo/inv0 <meta charset="utf-8"> <title>GAME</title> <style> body { color: #ccc; background: black; } </style> <body> <canvas width="800" height="700" id="c1"></canvas> <script> //___________________________________ { //アニメーションの環境か? const win = this; const substi…</body></meta>

マウスで3Dモデルを回転する(クオータニオン)

http://jsdo.it/babu_baboo/EZt9 いつものようにライブラリなんか利用しないで書いた。 凄く勉強になるのだが、すぐに忘れてしまいそうだ。 <meta charset="UTF-8"> <title>N個の点を持つ球体を描画する</title> <style> body { color: #ccc; background: black; } canvas { border: 1px #666 solid; } #</meta>…

3次ベジェ曲線を加減算&乗算&ビット演算で高速に計算する

これから徐々に ES6 を目指そう!なんと偶然なのかES6を勉強し始めました。 ほう!とかへえ!とか面白いです。 アロー関数のthisの扱いに戸惑う。forEach とかで this とかを多用している身としては残念。 しかも省略したアロー関数はiPad & iPod Toush では…

2次ベジェ曲線を高速に描く(加減算と乗算だけで)

<meta charset="utf-8"> <title>ベジェ曲線</title> <style> </style> <body> <h1>ベジエ曲線を整数の加減算だけで描画する方法</h1> <h2>高速に2次ベジェ曲線を計算する</h2> <p>JavaScriptでは整数型の演算ができるわけではないが以下を参考に作る <p><a href="http://studio-rain.cocolog-nifty.com/blog/2008/07/post_c4f5.html"> http://studio-rain.cocolog-nifty.com/blo…</a></p></p></body></meta>

Canvasで花火を打ち上げる(まだ書きかけ)

http://jsdo.it/babu_baboo/Oj11 iPadで連打すると意外に綺麗な花火が打ち上がる 大曲の花火大会は見たことが無いけれど、 こりゃ〜洋野町の花火大会より好いんじゃないかい?! <meta charset="UTF-8"> <title>N個の点を持つ球体。それはこの夏の花火につながる?!まだ書きかけ</title> <style> body {</style></meta>…

jsdo.it に登録

SELECT要素の複数連動。その2(iOS Safari(iPad, iPhone, iTouch)で動作可)jQueryなんて使わない。Ajaxも使わない

ちょっと改良した。 option,optgroup は、htmlで定義した順に表示されるようにした。 option,optgroup は、混在できる。 optgroup を指定する value値を拡張できるようにした カンマで区切るとoptgroupを複数指定できる。 * を指定するとすべて表示する /^te…

SELECT要素の連動(いくつでも可能&iOS Safariで動作可)

連動させると指数関数的に増えるのも理解できる Ajaxを推めるのも理解できる しかし、小さいならこれでも吉とするかな。 optgroupに対してdisplay:noneが効くのならもっと簡単なのに。 iPadとかiPhoneのsafariに対応させるために面倒だったなと愚痴をこぼす…

球面上にN個の点を均等に配置したい。その6 / 「多数の点を球面上に一様に分布させるソフトウェア」(山路敦)を JavaScriptに移植(コアな部分だけ)してみる

理論とか面倒なことは理解できないのだが、それにしても Pascal言語が理解しづらい。 そしてこんな理論を考えられる人が、なんで配列の操作を0からではなく1から始めたのかわからない なので、Javascriptらしく書き直す予定。 iPad でも動くよ。下の5種類は…

球面上にN個の点を均等に配置したい。その7(正二十面体を細かく分割)

正二十面体を細かく分割して球体にしてみる 分割処理は正三角形を一度に4等分割するので、3回行うと 20 * 4^3 = 1280 個の三角形ができるのだが(頂点はダブっているぞ!)、5回の分割だと Core i7 でもぎりぎり。 プログラム的には命名がおかしいけど、…

フィボナッチ数を求める関数

求める公式があったとは… 一般的な再帰による求め方をする必要がないのでよいのかもしれない。 マイナスの引数にも対処してみた。 (function () { // フィボナッチ関数 var round = Math.round; var pow = Math.pow; var sqrt5 = Math.sqrt (5); var goldR =…

球面上にN個の点を均等に配置したい。その5(フィボナッチ数個)そしてマウスのドラッグで回転もできる

もちろんこれは、夏に向けての花火の種となる <meta charset="UTF-8"> <title>N個の点を持つ球体を描画する</title> <style> body,canvas { background : black; } </style> <body> <canvas width="1000" height="1000"></canvas> <script> (function () { var INIT_QUATERNION = [1, 0, 0, 0]; function RotationController (element) { this…</body></meta>