標準DOMスクリプティング JavaScript+DOMによるWebアプリデザインの基礎
標準DOMスクリプティング JavaScript+DOMによるWebアプリデザインの基礎
この本でビッグDOMになります!
私をWEB2.0へ押し上げてくれるそんな一冊だ!
入力時に背景色を変える。
概要
テキストエリアにフォーカスされたときに背景色を変更する
function setInputFocus(){
var inputFocus = function(elm){
elm.style.backgroundColor="#eeffee";
}
var inputBlur= function(elm){
elm.style.backgroundColor="#ffffff";
}
if (!document.getElementsByTagName){ return; }
var anchors = document.getElementsByTagName('input');
for (var i=0; i<anchors.length; i++){
var anchor = anchors[i];
var idAttribute = String(anchor.getAttribute('type'));
if ( idAttribute.toLowerCase().match('text') ){
anchor.onfocus = function () { inputFocus(this);}
anchor.onblur = function () { inputBlur(this);}
}
}
}
Event.observe(window, 'load', setInputFocus, false);
胃が痛い
胃が痛い。。。
ってゆうか、ピリピリする。
ブラウザリサイズ時の処理
///ブラウザがリサイズされた時/////////////
function window_resize(){
ブラウザリサイズ時の処理
}
myListener = new Object();
myListener.onResize = window_resize;
Stage.addListener(myListener);
1年
ブログをはじめて1年
神戸から、京都勤務になって1年になりました。
ブログはこれまでにも数回、開設してはやめ
開設してはやめていたけれども
1年も続いたのは初めて。
これはすごいことだ、自分で自分をほめてあげたい(大袈裟)
といっても最近は読んだ本のamazonへのリンクか、
ブックマークぐらい。。。あとは仕事で役立つメモ的なものがほとんど。
でも、自分のブログを自分のために使うようになった、
仕事中に「あの技術どうするんだっけ?」ていうときに、
ブログ見て「あっ、そうそう」って感じで。
これは、すごい進歩だと思う。
これからも、どんどん書いていきたい。
そして、自分に役立つことが、
どこかのブログを見てくれた人の役に立てば、
ちょっとだけ幸せ。
もう、京都勤務になって1年です。
もうすっかり、京都の人間です(生まれも、育ちも京都ですが。)
この間、新人歓迎会で神戸に飲みに行きましたが、
知らない人がいっぱいいて、ビックリしました。
会社がどんどん大きくなっているんだな。
なかには、神戸で働いていた人もいて、
いい意味でも、悪いいにでもノリは変わってないなって感じた。
人間そんなに簡単には変わらないな、自分も含め。。。

京都でも歓迎会&お花見?をしました。
木屋町の桜はキレイでした、ライトアップはされてないけど、
木屋町の店のあかりでほのかに照らされているのが、
いい感じでした。
ブログも仕事もですが、自分のペースですこしだけ無理をして、
頑張っていきたいと思います。
最近やろうと思っていること、勝手に宣言!
・デスクトップアクセサリーを作る!
・スクリーンセーバーをもっと作る!
・javascriptライブラリーを作る!
・京都グルメマップを作る!
・イラストをもっと描く!
近況はおって報告します。
javascriptライブラリを作ろう!
がんばってみよう!
var $Obj = new Object();
$Obj = {
//////オブジェクト取得///////////////
get:function(prm){
if(document.getElementById && !document.all || document.layers){
obj = document.getElementById(prm);
}else if(document.all){
obj = document.all(prm);
}
//if(!obj) alert("$Obj.get ID="+ prm +" が見つかりません");
return obj;
},
///////レイヤー半透明//////////////
alpha:function(objName,alpha){
if(typeof(objName)=="object") var alp = objName;
else var alp = $Obj.get (objName);
alp.style.Opacity = Number(alpha) / 100;
alp.style.filter = 'alpha(opacity=' + Number(alpha) + ')';
alp.style.MozOpacity = Number(alpha) / 100;
},
///////////指定したレイヤーの座標を取得///////////////
pos:function (eremID){
if(typeof(eremID)=="object") var offsetTrail = eremID;
else var offsetTrail = $Obj.get(eremID);
var offsetLeft = 0;
var offsetTop = 0;
while(offsetTrail){
offsetLeft += offsetTrail.offsetLeft;
offsetTop += offsetTrail.offsetTop;
offsetTrail = offsetTrail.offsetParent;
}
if(navigator.userAgent.indexOf("Mac") != -1 &&
typeof document.body.leftMargin != "undefined"){
offsetLeft += document.body.leftMargin;
offsetTop += document.body.topMargin;
}
return{ left:offsetLeft , top:offsetTop }
}
}
var $Brw = new Object();
$Brw = {
///////ブラウザサイズを取得する//////////////
size:function (){
var agent = navigator.userAgent;
var appna = navigator.appName;
var userOs = null;
var browser = null;
var version = null;
var ie55 = false;
if ( agent.indexOf('Win') != -1 ){
if ( appna == "Microsoft Internet Explorer" ){
version = agent.substring((agent.indexOf('MSIE')+5),(agent.indexOf('MSIE')+8));
if(Number(version)<=5.5){
ie55 = true;
}
}
}
if (document.all) {
if(window.opera || ie55){
brsHeight = document.body.clientHeight;
brsWidth = document.body.clientWidth;
}else{
brsHeight = document.documentElement.clientHeight;
brsWidth = document.documentElement.clientWidth;
}
}else if (document.getElementById && !document.all || document.layers) {
brsHeight = window.innerHeight;
brsWidth = window.innerWidth;
}
return { height:brsHeight , width:brsWidth };
}
}
var $Date = new Object();
$Date = {
////////日付取得する/////////
get:function(){
var stoday = new Date();
var syear = stoday.getYear();
if( syear < 1000) syear = syear + 1900;
var smonth = stoday.getMonth()+1;
return {
year: syear ,
month:smonth ,
date:stoday.getDate() ,
hours:stoday.getHours(),
minutes:stoday.getMinutes(),
seconds:stoday.getSeconds()
}
}
}
var $Evt = new Object();
$Evt = {
addLtn:function(elm, type, func, useCapture){
if(!elm){ return false;}
if(!useCapture){
useCapture = false;
}
if(elm.addEventListener){
elm.addEventListener(type, func, false);
}else if(elm.attachEvent){
elm.attachEvent('on'+type, func);
}else{
return false;
}
return true;
},
remLtn:function(elm, type, func, useCapture){
if(!elm){ return false;}
if(!useCapture){
useCapture = false;
}
if(elm.removeEventListener){
elm.removeEventListener(type, func, false);
}else if(elm.detachEvent){
elm.detachEvent('on'+type, func);
}else{
return false;
}
return true;
}
}
var $Ajax = new Object();
$Ajax = {
req:function(url,act){
var createXMLHttpRequest = function(func){
var XMLhttpObject = null;
if(window.XMLHttpRequest){
XMLhttpObject = new XMLHttpRequest();
}else if(window.ActiveXObject){
try{
XMLhttpObject = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
XMLhttpObject = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
return null;
}
}
}
if(XMLhttpObject) XMLhttpObject.onreadystatechange = func;
return XMLhttpObject;
}
var check = function(){
if((xmlhttp.readyState==4)&&(xmlhttp.status==200)){
act();
}else if(xmlhttp.readyState==4){
act();
}
}
xmlhttp = createXMLHttpRequest(check);
if(xmlhttp){
try{
xmlhttp.open("get",url, true);
xmlhttp.send(null);
}catch(e){
}
}
}
}
css hacks
これ見ればcssハックもばっちり。
centricle : css filters (css hacks)
firefox拡張機能いろいろ
どんどん付け足していきたいです。
- Web Developer
- View Source Chart
ソースを視覚的にみれます。
IE6で透過PNGを表示させる
概要
IE6で透過PNGを表示させる
CSSハックを利用してIEとそれ以外を振り分けています。
#back{
width:816px; height:66px;
background:url(/images/test.png) no-repeat;
/* IEの場合無効にする */
_background:none;
}
/* IEの場合 */
* html #back{
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/images/test.png',sizingMethod=image);
}
スクリプトエラーを表示させる
概要
スクリプトエラーを表示させる

