アーカイブ

‘JavaScript’ タグのついている投稿

「3桁÷2桁=2桁あまり2桁」で1から9までの数字をすべて使う

2010 年 7 月 19 日 コメントはありません

こんなパズルがあるそうです。

「3桁÷2桁=2桁あまり2桁」となる計算で、1から9までの数字をすべて使う場合を見つけろ。

例を挙げると「589 ÷ 46 = 12 あまり 37」。数字が9個ありますが1から9までの数字がすべて使われています。
このようなケースが他にもあるのですべて見つけろ、というわけです。

算数的、数学的に解けるのかもしれませんが、コンピューター的に解いてみました。つまり「しらみつぶし法」です。
JavaScriptで書きました。
続きを読む…

カテゴリー: 小ネタ タグ: , ,

「Twitterに投稿」用のリンクとブックマークレット

2010 年 6 月 3 日 コメントはありません

自分のウェブサイトのタイトルとURLをTwitterに投稿するための「リンク」は次のように書きます。

<a href="javascript:(function(){window.open('http://twitter.com/home/?status=' + '〈' + document.title + '〉' + document.location.href)})()">Twitterに投稿</a>

そして、この「リンク」を右クリックしてブックマークに登録するとブックマークレットになります。この場合は自分のウェブサイトでなくても使えます。

Twitterに投稿

自動入力のためのブックマークレットの作り方

2010 年 5 月 28 日 コメントはありません

ウェブサイトのテキストボックスに文字列をセットしたり、リストボックスの選択肢を選んだりすることがありますが、いつも同じページで同じ作業をするのは苦痛です。
ブックマークレットを使うと自動化することができます。
ここではブックマークレットの作り方を説明します。 続きを読む…

テキストボックスにひらがな以外を入力できないようにする方法

2010 年 4 月 29 日 コメントはありません

テキストボックスにひらがな以外を入力できないようにしたい。
次のようにすると、ひらがな以外または空文字の場合、アラートが出て実行されない。

<form action="" onsubmit="return checkit()">
<input type="text" id="t0" style="ime-mode:active;">
<input type="submit" value="実行">
</form>
<script>
function checkit(){
  mytext=document.getElementById("t0").value;
  if(mytext.match(/[^あ-ん]/)){
    alert("ひらがなで入力してください。");
    flg=false;
  }else if(mytext==""){
    alert("何か入力してください。");
    flg=false;
  }else{
    flg=true;
  }
  return(flg);
}
</script>
カテゴリー: JavaScript タグ:

改行を削除

2010 年 3 月 18 日 コメントはありません

JavaScriptで改行を削除する方法は色々あるようですが、これが最もシンプルなのではないかと思います。

ato=mae.replace(/[\r\n]/g,"");
カテゴリー: JavaScript タグ: ,

修正ユリウス日

2010 年 3 月 11 日 コメントはありません

シリアル値

エクセルで経過日数を求めるには日付同士を単純に引き算すれば求められます。
エクセルではシリアル値という値を使って日付を管理しているからです。シリアル値は1900年1月1日を「1」、2日を「2」として延々と日数を数えた値です。

例えば、2001年2月18日から2004年1月1日までの経過日数を求めてみます。
2001年2月18日のシリアル値は「36940」で
2004年1月1日のシリアル値は「37987」ですので、引き算して
37987-36940=1047(日)となります。 続きを読む…

カテゴリー: Excel, JavaScript タグ: , ,

alertとpromptのどちらを使うか

2010 年 3 月 5 日 コメントはありません

ブックマークレットで、取得した何らかの結果を表示させるにはアラートまたはプロンプトを使う。

javascript:(function(){alert('sample');})()
javascript:(function(){a=window.prompt('title','sample');})()

promptを使った場合は、IEならば、文字列がテキストボックスに出力され、選択状態になるので、コピーが簡単である。

ブックマークレットで目的のウェブサイトを開く方法

2010 年 2 月 12 日 コメントはありません

ブックマークレットを使って特定のページを開く場合は次のような方法があります。

同じウィンドウで開く

javascript:(function(){document.location.href=URL})()

別のウィンドウで開く

javascript:(function(){window.open(URL)})()

モニターで長さを測る方法

2009 年 12 月 2 日 コメントはありません

目の前にパソコンはあるのだけれど、定規がない場合にパソコンのモニターで長さを測る方法です。WindowsXPで使えます。

スタート-コントロールパネル-画面を開き(デスクトップ上で右クリック-プロパティでも可)、設定タブを選択してください。
詳細設定をクリックすると「DPI設定」のところに「96DPI」などと書かれています。これは画面が1インチあたり96ピクセルであることを表します。以下、96DPIを前提に。

今、HTMLを使って10センチ(100ミリ)の線を書きたいとします。
1インチは25.4ミリですので、96×100÷25.4=378(ピクセル)となります。
次のように書くと幅10センチの細長い四角が描かれます。

<img src='temp.png' width='378px' height='20px'>

JavaScriptで書くならば次のような感じで。長さが変えられます。

var mm=100;//10センチならば「100」ミリ
var dpi=96;
var mmpi=25.4;//1inch=25.4mm
var pxl=mm*dpi/mmpi;
document.write("<img src='temp.png' width='"+pxl+"px' height='20px'>");

10mm
20mm
30mm
40mm
50mm
60mm
70mm
80mm
90mm
100mm

カテゴリー: JavaScript タグ: , , ,

「13日の金曜日」を羅列する

2009 年 11 月 13 日 コメントはありません

今日は13日の金曜日。今年は3回ありました。来年は1回だけ。

2000年から10年間の「13日の金曜日」を羅列するコード(JavaScript)は次の通り。

function fri13(){
  var s="";
  for(i=0;i<120;i++){
    d=new Date(2000,i,13);
    if(d.getDay()==5){
      s+=d+"<br>";
    }
  }
  return(s);
}

あと、昔、こんなものを作りました。
次の13日の金曜日-換算ゲングル
「次の13日の金曜日」と入力すると、次の13日の金曜日はいつなのかが表示されます。元々は単位の換算をするプログラムです。

カテゴリー: JavaScript タグ: