<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<title>test</title>
<form action="#">
<p id="pp">
<input type="text" id="y" size="6">
<input type="text" id="m" size="4">
<input type="text" id="d" size="4">
</p>
<p id="qq">
<input type="text" id="yy" size="6">
<input type="text" id="mm" size="4">
<input type="text" id="dd" size="4">
</p>
</form>
<script type="text/javascript">
var Kurukuru = (function ( createListener, get, next ) {
return function ( id ) {
var listener = createListener( id, get, next );
document.getElementById( id ). addEventListener(
'keydown', listener, true);
};
})(
function ( tid, get, next ) {
return function (evt) {
var e = evt. target ;
var keyCode = evt. which ;
var shift = evt.shiftKey;
var p, c;
if( keyCode == 9 ) {
if( p = get( next( e ), 'id', tid ) ) return;
evt. preventDefault() ;
(p = next( e.parentNode )) && p.focus();
}
};
},
function (node, type, val) {
return node ? (val == node[type]) ? node: arguments.callee(node.parentNode, type, val): null;
},
function ( n ) {
var e;
while (n) {
e = n.firstChild || n.nextSibling
if (! e) {
do {
if (! (n = n.parentNode)) return null;
} while (! (e = n.nextSibling))
}
n = e;
if( 1 === n.nodeType &&
/INPUT|SELECT|TEXTAREA/.test( n.nodeName ) &&
!('INPUT' == n.nodeName && 'hidden' == n.type)
) return n;
}
return null;
}
);
Kurukuru('pp');
Kurukuru('qq');
</script>