JS

フォーカスされた時の点線の枠を消す

以前、フォーカスが移った時に出てくる点線の枠を消すのに blurを使って消すことはできた。 小さい文字のボタンだと、枠線で文字が見え難くなるので どうにかならんかなとは思ってたけど この方法はどうもシックリしなかったので、全く使ってなかった。 先程…

マウスイベントでの勘違い

JS

IEでの話ですけど、マウスイベント?だかで button returnValue などがありますけど、これらは Object.attachEvent('onmouseup' function(e) {e.returnValue = true])な感じで、attachEventで発生する↑ではeでしか使えないものだと思い込んでました。 (なぜ…

HOSTなど省略されているリンクを正しく取得するには?

JavaScriptの'htmlfile'オブジェクトを使ってリンクを取得すると ホストなどが省略されているリンクは、ローカルのパスが混じってしまう。 今まで正規表現で変換させていたけど、正規表現が苦手なもんだから どうもうまく取得できない。 元のソースを見て気…

TextAreaの文字色を変更

appendChildを使うと、テキストエリアにタグを挿入できるみたいです。 文字の色を変えて書き込む。 //テキストエリアのオブジェクト var obj = document.getElementsByTagName('textarea').item(0); //spanタグ作成 var elm = document.createElement('span'…

cssText

JS

cssTextはFirefoxでは使えないみたいですが document.createStyleSheet().cssText = 'body{background:#000colo:#fff}';のように書くと、IEではスタイルシートの内容を書き込めますが 単体のオブジェクト(エレメント?)にも通用するみたいです。 例えば、i…

replaceChildでタグを置き換える

JS

replaceChildというのを使えば、タグを置き換える事が出来るみたいです。 例えば、ボタンを押すとテキストエリアに変わるスクリプト↓(IEの場合) <body> <button id=btn>ボタン</button> <script type=text/javascript> btn.onclick = function() { var elm = document.createElement('textarea'); this.parentNode.repl</script></body>…

IEのFilterのMatrixを使って画像などをリサイズ、回転させる その2

少し前に書いたHTAに少し手を加えてみました。 画像のみ対応で、画像のパスかURLを入力して開くようにしてみた。 ドラッグで移動、ホイールでズームのアップダウン、ダブルクリックで倍率1に。 リセットボタンでmatrixの値を初期値に戻します。 zipファイル…

リサイズできるテキストエリア

JS

有名なライブラリだか使えば出来るみたいだけど 挑戦することに意義があり、レベルアップのために自分で書いてみた。 ライブラリだか良くわからんので、自分で書かざるを得ないだけだけど。 とりあえず自分で使う分にはそれっぽい動作はできた。 たぶんIEだ…

Filterを使って丸いボタン

だいぶ前にも少し触れたけど、やることも書くこともないのでまたw スタイルシートの記述内だけで、画像を使わず丸いボタンに。 しかしながら、Filterを使っているのでIEのみみたいです。 フォーカスされると枠線が出てしまうのが難だなぁ。 ソースはこんな…

16進数から10進数に

JS

10進数から16進数に変換するのに var num = 255; num = num.toString(16);こんな感じでやればできたけど その逆、16進数から10進数に変換するにはparseInt使って 先頭に0xを付け足すか、第二引数で指定 var str = 'ff'; str = parseInt('0x' + str); //もし…

肯定先読みと?:

肯定先読み(?=)をなんとなく理解してたが ?:←これがWSHのヘルプに載っており それ見たら以前より、なんとなく理解できた。 var str = 'Windows95 Windows98 Windows2000 WindowsXP'; alert(str.replace(/Windows(?=95|98|2000)/g, '@')); //@95 @98 @2000 Wi…

clearData()

JS

clipboardData.clearData();IEのみだけど、クリップボードをクリア(null)。 今偶然、違うこと調べてたら↑これを知ったw setDataとgetDataは知ってたけど、これは知らんかったな。

スタイルシートで正規表現?

[href^="aa"] {background: #000}なにやら正規表現を使って、IDだとかURL別に処理しているこんな感じの記述を見掛けた。 なんたらセレクタだとか。 だけどIE6では対応していない様子・・・。(7、8は対応?) しかしexpressionを使えば同じようなことが一応でき…

fontcolor、fontsize

JS

地味過ぎて忘れてた便利な関数。 IEとFirefoxでの確認のみだけど <pre id=prepre></prepre> <script type=text/javascript> prepre.innerHTML = 'test'.fontsize('30px').fontcolor('#0000ff'); </script>↑これで <font color="#0000ff" size="30px">test</font>として書き込まれる。 ただ prepre.innerHTML = '<font size="30px" color="#0000ff">' + test + '</font>

replaceで置換後の文字に、代入した文字を使った場合\\nなどを\nとして扱うには

JS

置換後の文字列に、入力ボックスなどから持ってきた文字を使うと \nなどは\\nとして認識されてしまう。 そういう場合は、'か"で囲んでevalに渡せばOKらしい。 //bを\nに置換 var text = 'aabaabaa'; var str = '\\n'; text = text.replace(/b/g, eval('"' + …

if ()のスペース

JS

ifなんたらかんたらを書く時 if (a == 2) { ---- } else if (a == 3) { ---- }こんな感じに、どういうわけか括弧との間にスペースを入れている。 これは多分、最初にお手本にした人のコードがそうだったから そういうもんなんだろうということで、深く考えず…

onKeyDownとonKeyPress

前にIEでonKeyPressを試した時に無反応だったので、IEでは使えないとばかり思っていたけど その時は確か、Tabキーの反応だけを見ただけだったのでそう思い込んでしまったようだ。 onKeyPressはTabキーやShiftキー単独では無反応のようで 例えば、aを押すとa…

i++と++iの違い

JS

var i = 1; alert(i ++); //1 //++を後ろに付けると初回はそのまま1が返って、次回から1足された値が返る。var i = 1; alert(++ i); //2 //++を前に付けると初回から1が足された2が返ってくる。 だそうだ。 なるほどなるほど、これは気づかんかったw 前に付…

選択範囲の数字をカンマで区切るサクラエディタのマクロ

1000000 → 1,000,000 な感じに。 拡張子はjs。 num = getselectedstring(0).toString().replace(/(\d+),(\d+)/g, '$1$2'); while(num != (num = num.replace(/(\d+)(\d{3})/, '$1,$2'))); instext(num); 一応、自分で考えてはみたけど無理ですたw だから検…

変なfor文発見

JS

inでないfor文というのは var arr = ['a', 'b', 'c', 'd', 'e']; for (var i = 0; i < arr.length; i ++) { alert(arr[i]); }な感じで iが0で; lengthを使って配列の数以下まで続けて; iを1づつ足す というようなもんだと思ってたんだけど よく見るサイトで…

お気に入りグループのファイルに書き込んであるタイトルを検索して開くunDonutScript

お気に入りグループ、dfgファイルに書き込まれているタイトルを検索して マッチしたURLを開くunDonutScript(拡張子js)。 検索バーに検索する文字列を入力(半角スペースでand検索)してから このスクリプトを実行すると、unDonutのfavoritegroupのフォルダ…

ハッシュのキーに変数を付加させたい

ハッシュのキーに変数を足したい場合、括弧を含めてStringにしたものを evalで変換すればいいらしい。 var str = '01'; var hash = eval("({test" + str + ": 'AAA'})"); alert(hash.test01); //AAA 参考にしたサイト jsonオブジェクトをevalできないエラー …

マウスでなにかしら移動させたかった unDonut編

今度はunDonutのAPIを使ってアクティブなページのimgタグを、about:blankを開いて 一覧表示るjsスクリプトに挑戦した。 ホイールで拡大縮小。 ダブルクリックで元の大きさ⇔100pxの大きさ。 マウスで移動。 IE6のunDonut+modなんとかバージョン(win98でも使…

マウスでなにかしら移動させたかった

JS

ウィンドウをドラッグ(あれ、ドラック?)して移動させることに挑戦してみた。 IE6のみの確認ではあるが一応出来た感じはする。 けれど、なにかが違う・・・。 マウスカーソルの引っ付きが悪い。 <html> <head> <style type="text/css"> #test-dayo { position : absolute; width : 200px; height </style></head></html>…

HTAのエディターもどきのIE版(6だけかも)のHTML

HTAのエディターもどきのIEバージョン。 もしかしたらIE6だけかもしれんけど。 HTAとほぼ一緒。 HTAと違い、ファイルの読み書きができないので 変わりにそれぞれ一つにまとめてコピー。 ショートカットキーは、自分のunDonutで使ってないキーを適当に選択し…

location.pathnameの%20

JS

HTAでlocation.pathnameを使って自身のパスを取得すると 空白があった場合その空白は%20になる。 パスに空白があるディレクトリに置いてみたらエラーになって気付いた。 unescapeでデコード?すると半角スペースに戻る。 前に書いた 保存した場所のファイル…

JavaScriptのsplitで正規表現を使う使わないとでは挙動が違う?

正規表現で区切ると空白は省略されるけど 使わないと空白も数に入ってしまった。 var str = '/a//b'; var zupa = str.split('/'); //,a,,b と表示 alert(zupa.join(',')); //,a,,b zupa = str.split(/\//); //a,b と表示 alert(zupa.join(','));これでドン詰…

スタイルシートが見難い

スタイルシートの記述で body { background: #000; color: #fff; margin: 0; }↑こんな感じのを body { background: #000; color : #fff; margin : 0; }このようにすると見易くなり、後々の変更などが楽だったので そんな感じに書き換えるWSHのJScriptを書い…

SendKeysでShiftキーを押さないと打てない文字を打つ

WSHなど、wscript.shellのsendkeysで文字列を打ち込む時 shiftキーを押さないと打てない文字、'('や'>'などは //aa(bb)ccを打つ場合 new ActiveXObject('wscript.shell').sendkeys('aa{(}bb{)}cc');のように'{}'で囲めば打てるようになる。 fromCharCodeなど…

配列を渡す時の注意

JS

JavaScriptの動かないコード (初級編) 関数に配列を渡すときのエラー - 主に言語とシステム開発に関して ↑では関数に渡した場合だけど、下記のように変数arr2にarr1を代入して arr2にだけに'd'を追加したつもりがarr1にも追加されていた。 var arr1 = ['a', …