2009年12月29日火曜日

ブラウザ機能抑止

ブラウザ機能抑止の世界では、

  • 右クリック

  • 戻るボタン

  • F5



あたりが抑止される対象だと思う。
まあ、ブラウザの機能を抑止するWebページってどうなんだ、
という議論は置いておいて。
(業務システムだとか、そういう場合かな)

またもや、jqueryを用いて抑止してみた。

一応、以下の場所ではBackspaceを許可。

  • <input type="text">

  • <input type="password">

  • <textarea></textarea>





<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html lang="ja">
<head>
<title> .:: Sample Play Keepaway ::. Prohibit-01</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="cache-control" content="no-cache">
<meta name="Author" content="Sample">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<link rel="stylesheet" href="css/blue/style.css" type="text/css" media="print, projection, screen" />
<link rel="stylesheet" href="css/default.css" type="text/css" />






</head>
<body>
<h2>最初のページ</h2>
<div>
テキストボックス:<input type="text" name="sampleText" id="sampleText" size="20" value="さんぷるてきすと">
<br>
パスワードボックス:<input type="password" name="samplePassword" id="samplePassword" size="10" value="">
<br>
テキストエリア:<textarea name="sampleArea" id="sampleArea" rows="10" cols="20">ああああああああああああああああああああああああ
いいいいいいいいいいいいいいいいいいいい
</textarea>

<a href="./sample2.html">次のページへ</a>
</div>

</div>

</body>
</html>

2009年10月18日日曜日

和暦→西暦+曜日算出

よくよく考えてみると、
西暦に戻すと、月日は関係ないのかも。

ということで、一気に仕上げた。

曜日まで出すよ。



$(function(){
$('#convertButton').click(function(){
var d = $('#date_text').val();
$('#result').html(d.getSeireki('漢字', true));
});
});

var weeks = ["日","月","火","水","木","金","土"];

String.prototype.getSeireki = function(pattern, day) {
var ret = this.match(/[0-9]+/g);
var wareki = '';
var year = -1;
var month = -1;
var date = -1;
if (ret.length == 1) {
year = ret[0];
wareki = this.substring(0,this.indexOf(ret[0]));
} else if (ret.length == 2) {
year = ret[0];
wareki = this.substring(0,this.indexOf(ret[0]));
month = ret[1];
} else if (ret.length == 3) {
year = ret[0];
wareki = this.substring(0,this.indexOf(ret[0]));
month = ret[1];
date = ret[2];
} else {
return '';
}

var result = '';
if ("昭和" == wareki || "S" == wareki) {
result = parseInt(year) + 1925;
} else if ("平成" == wareki || "H" == wareki) {
result = parseInt(year) + 1988;
} else if ("大正" == wareki || "T" == wareki) {
result = parseInt(year) + 1911;
} else if ("明治" == wareki || "M" == wareki) {
result = parseInt(year) + 1867;
}

var divYear = '';
var divMonth = '';
var divDate = '';
if (pattern == undefined || pattern == '漢字') {
pattern = 1;
divYear = '年';
divMonth = '月';
divDate = '日';
} else if (pattern == '-') {
pattern = 2;
divYear = '-';
divMonth = '-';
divDate = '';
} else if(pattern == '/') {
pattern = 3;
divYear = '/';
divMonth = '/';
divDate = '';
} else {
pattern = 3;
}

if (ret.length == 1) {
return result + divYear;
} else if (ret.length == 2) {
return result + divYear + month + divMonth;
} else if (ret.length == 3) {
var dispDay = '';
if (day == true) {
var strDate = result + '/' + (month) + '/' + date;
var d = new Date(strDate);
var youbi = weeks[d.getDay()];
if (pattern == 1) {
dispDay = ' ' + youbi + '曜日';
} else if (pattern == 2 || pattern == 3) {
dispDay = ' (' + youbi + ')';
}
}
return result + divYear + month + divMonth + date + divDate + dispDay;
}
}

和暦→西暦

和暦→西暦変換について。

Stringオブジェクト(クラス?)を拡張して、
getSeirekiなるメソッドを作ってみた。

本当にこんな拡張でいいかは別にして。


最初と言うことで、
 和暦年 → 西暦年という変換だけど、

最終形は、
 和暦年月日 → 西暦年月日
ということだと思う。

たとえば、1989年1月8日は平成1年だけど、
1月7日だと昭和64年だということ。

今回のは、昭和56年 → 1981年という変換です。




2009年10月15日木曜日

和暦

日本にいたら、一生?ついてまわる和暦。

西暦⇔和暦変換って、
JavaScriptでどうやろう。

とりあえず、

  • 明治が始まる日:1868/09/08

  • 大正が始まる日:1912/07/30

  • 昭和が始まる日:1926/12/25

  • 平成が始まる日:1989/01/08

  • そして...



出展:和暦西暦対応表

  → 旧暦とか使ってるから、SEっぽくないなぁ。。。

という数字を持っていなければならないかな。
で、元号が分かるとアップデート。


とりあえず、ここが参考になるので、
読みながら勉強しよう。

2009年9月10日木曜日

jqueryでDOM操作

xmlによるDOM操作をもうちょっと勉強してみた。

繰り返しとかeachでできるようになったけど、
子要素とか難しい。
childとか。

でも、だいたいできるようになった気がする。

ポイントは、dataTypeとか指定しないことかなぁー

 → 指定はずしたら、うまく動くようになった。。。

XMLソース


















HTMLソース














2009年8月31日月曜日

XML解析①

JavaScriptの話ばかりですが、
やっぱりAjaxに触れないわけにはいかない、ということで、
ちょっとやってみました。

まず、一番大切なのは、xml解析かなと。

で、やっぱりjQueryかなと。

ここを参考にしてみました。
ありがとうございます。

で、使うjqueryはいつものやつ。
 → テーブルソート①

ポイントは、xmlオブジェクトを

$(xml)

で扱えることかな。
findして、eachしてと、かなり便利。
jqueryに詳しいと簡単なことかと思うので、
今日はここまで。


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html lang="ja">
<head>
<title> .:: Sample Play Keepaway ::. Table-Sort-01</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="cache-control" content="no-cache">
<meta name="Author" content="Sample">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<link rel="stylesheet" href="css/blue/style.css" type="text/css" media="print, projection, screen" />




</head>
<body>

<div class="preview">
<ol id="samp-list">
</ol>

</div>

</body>
</html>

2009年8月30日日曜日

テーブルソート③

テーブルソートの第3回目

ダウンロードはここから。

  1. Table Sorting with Prototype [zipファイルをダウンロードします]




評価
  • 使いやすさ:○ 何も指定しなくていいのは、実は楽かも。nosortもあるし。
  • 安心:prototypeは安心ですね。scriptaculousは使ったことないから、自分のスキルに若干不安あり。
  • その他:他のJavaScriptライブラリとの併用は大丈夫?統一すべきだよなー




jQueryのときと変わった部分
  1. 読み込むスクリプトが違うのは当然。
  2. scriptを読み込む&class指定のみでソート可能




ソース

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html lang="ja">
<head>
<title> .:: Sample Play Keepaway ::. Table-Sort-01</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="cache-control" content="no-cache">
<meta name="Author" content="Sample">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<link rel="stylesheet" href="css/style.css" type="text/css" media="print, projection, screen" />
<script language="Javascript" type="text/javascript" charset="UTF-8" src="js/lib/scriptaculous/lib/prototype.js"></script>
<script language="Javascript" type="text/javascript" charset="UTF-8" src="js/lib/fastinit.js"></script>
<script language="Javascript" type="text/javascript" charset="UTF-8" src="js/lib/tablesort.js"></script>
</head>
<body>


ソートしたい場合は、class="sortable"を記述する

first name last name age total discount date
peter parker 28 $9.99 20% jul 6, 2006 8:14 am
john hood 33 $19.99 25% dec 10, 2002 5:14 am
clark kent 18 $15.89 44% jan 12, 2003 11:14 am
bruce almighty 45 $153.19 44% jan 18, 2001 9:12 am
bruce evans 22 $13.19 11% jan 18, 2007 9:12 am

ソートしたくない場合は、class="nosort"を記述する

first name last name age total discount date
peter parker 28 $9.99 20% jul 6, 2006 8:14 am
john hood 33 $19.99 25% dec 10, 2002 5:14 am
clark kent 18 $15.89 44% jan 12, 2003 11:14 am
bruce almighty 45 $153.19 44% jan 18, 2001 9:12 am
bruce evans 22 $13.19 11% jan 18, 2007 9:12 am
</body>
</html>