반응형
기본적인것이지만.
한번 남겨본다..

<body onload="javascript:xxtest();">
위와 같이 하면 body가 읽어지면 xxtest()라는 javascript function을 실행을 한다.
비슷한 방법으로는..

<script language="javascript">
window.onload = function() {
//내용
}
</script>
이러한 방법으로도 할수 있다.
반응형
반응형

간단한 브라우저 정보 알아오기이다.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<title>Navigator 객체를 이용한 사용자 브라우저 정보 알아보기</title>
</head>
<body>
<h2>브라우저 정보</h2>
<script type="text/javascript">


document.write("브라우저 코드 : " + navigator.appCodeName + "<BR>");
document.write("브라우저 이름 : " + navigator.appName + "<BR>");
document.write("브라우저 버전 : " + navigator.appVersion + "<BR>");
document.write("사용 언어 : " + navigator.language + "<BR>");
document.write("시스템 코드 : " + navigator.platform + "<BR>");
document.write("UserAgent : " + navigator.userAgent + "<BR>");
document.write("스크립트 가능 유무 : " + navigator.javaEnabled() + "<BR>");
document.write("오류 유무 : " + navigator.taintEnabled() + "<BR>");

</script>
</body>
</html>

일단 위와같고. navigator로 알아오는 것이다.

크롬, 사파리, 파이어폭스는 Netscape로 표기가 되고 오페라는 Opera로 익스플로어는 Explorer로 각각 브라우저 이름이 표기된다.

반응형
반응형

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script language="javascript">
<!--
var strLen;
function FFGetByteLength( obj ) {
    var msg = obj.value;
    var str = new String(msg);
    var len = str.length;
    var count = 0;
    for (k=0 ; k<len ; k++) {
        temp = str.charAt(k);

        if (escape(temp).length > 4) {
            count += 2;
        } else if (temp == '\r' && str.charAt(k+1) == '\n') { // \r\n일 경우
            count += 2;
        } else if (temp != '\n') {
            count++;
        }


        if ( count > 3000 ){
            strLen = k;
            break;
        }
    }
    return count;   
}

 

// 호출 method
function checkLength(formName) {

    alert (FFGetByteLength(document.all[formName].user_input));

     if ( FFGetByteLength(document.all[formName].user_input) > 3000){
     alert("메시지의 길이는 3000byte 이내여야 합니다.");
    tmpStr = document.all[formName].user_input.value.substring(0, strLen);
    document.all[formName].user_input.value = tmpStr;}
}
</script>

</HEAD>

 

<BODY>
<FORM METHOD=POST ACTION="" name='aa'>
<TEXTAREA NAME="user_input" ROWS="5" COLS="20"></TEXTAREA>
<INPUT TYPE="button"  onClick="checkLength('aa')" value="몇 Byte?">
</FORM>
</BODY>
</HTML>

반응형

'프로그래밍 > JAVASCRIPT' 카테고리의 다른 글

[JAVA SCRIPT] WINDOW.OPEN  (0) 2010.09.01
브라우저 정보 알아오기.  (0) 2010.07.20
Textarea 글자수제한.  (0) 2010.07.13
스크립트로 이미지 사이즈를 조정  (0) 2010.07.12
escape메서드  (0) 2010.07.07
반응형


<HTML>
 <HEAD>
  <TITLE>javascript exam</TITLE>
  <SCRIPT language="javascript" type="text/javascript">
  //<![CDATA[
    function fc_chk_byte(aro_name,ari_max) {
      var ls_str = aro_name.value;
      var li_str_len = ls_str.length;
      var li_max = ari_max;
      var i = li_byte = li_len = 0;
      var ls_one_char = ls_str2 = "";
      for(i=0; i< li_str_len; i++) {
        ls_one_char = escape(ls_str.charAt(i));

        if( ls_one_char.length == 1 ) li_byte++;
        else if( ls_one_char.indexOf("%u") != -1 )  li_byte += 2;//Db가 한글을 3byte로 인식하여 2->3
        else if( ls_one_char.indexOf("%") != -1 ) li_byte += ls_one_char.length/3;

  if(li_byte <= li_max){
   li_len = li_byte;
  }
      }

      if(li_byte > li_max) {
        alert( li_max + "byte, 초과 ");
        ls_str2 = ls_str.substr(0, li_len);
        aro_name.value = ls_str2;
        document.sms.char_byte.value = 3000;
      }else {
        document.sms.char_byte.value = li_byte;
      }
      aro_name.focus();
    }
  //]]>
  </SCRIPT>
 </HEAD>

 <BODY>
  <FORM METHOD=POST name="sms">
    <TEXTAREA NAME="txta" ROWS="12" COLS="52" onkeyup="fc_chk_byte(this, 3000)"></TEXTAREA>
    <br />
    <input type="text" size="4" name="char_byte" id="char_byte" readonly> / 3000 byte
    <input type="button" value="send" onclick="alert(document.sms.txta.value)" />
  </FORM>
 </BODY>
</HTML>

영문은 1byte로 한글은 2byte로 마춰져있다.
현재는 3000으로 마춰져있지만 fc_chk_byte(this, 3000) <-- 여기서 3000 을 자신이 원하는 수로 변경을 하면 수정이 가능하다.

반응형
반응형
스크립트로 이미지 사이즈를 조정

스크립트를 이용해서 화면에 보여줄 이미지의 크기를 변경하는 소스입니다..  

저같은경우 사진자료실이 있는데 사진자료실의 이미지가 테이블 크기보다 크게되면 사이즈를 줄이는 용도로

만들었습니다..

<script>
function imgSize(which){
    var width = eval("document."+which+".width");
    var height = eval("document."+which+".height");
    var temp = 0;
    var max_width= 600;   // 이미지의 최대 크기    
   
    if ( width > max_width ) {  // 이미지가 600보다 크다면 너비를 600으로 맞우고 비율에 맞춰 세로값을 변경한다.      
       height = height/(width / max_width);
       eval("document."+which+".width = max_width");    
       eval("document."+which+".height = height");
    }    
}
</script>

<html>
<body>
<table>
<tr>
<td width=100 >사진</td>
<td > <img src="../cl_upload/sajin/<%=v_file_nm%>" border=0 name="img"></td>
</tr>
</table>
<script>imgSize("img");</script>
</body>
</html>

!! 주의 할점 :  함수를 호출할때 꼭 이미지가 들어간 테이블밖에서 실행해야
실행됩니다. 테이블을 이용하지 않는다면 바디테그 이후에 넣어줘야 합니다.
간단한 소스인데도. . 찾기가 힘드네여.-_-;

//PHP에서 가져 온거

function UploadImage(iw,ih,j){
alert("");
iWidth=parseInt(eval("document.image"+j+".width"));
iHeight=parseInt(eval("document.image"+j+".height"));
if(iWidth>parseInt(iw) && iWidth>=iHeight){
eval('document.image'+j+'.height=parseInt(iw)/iWidth*iHeight;');
eval('document.image'+j+'.width=parseInt(iw);');
}
if(iHeight>parseInt(ih) && iHeight>iWidth){
eval('document.image'+j+'.width=parseInt(ih)/iHeight*iWidth;');
eval('document.image'+j+'.height=parseInt(ih);');
}
eval('document.image'+j+'.style.visibility="visible";');
}


//


<img src="testimg.gif" name="image1" style="visibility:visible;" onClick="UploadImage('20','30',1)">


참조:http://phpschool.com/bbs2/inc_view.html?id=14193&code=htmlscript2&start=20&mode=search&field=body&search_name=&operator=and&period=all&category_id=&s_que=%C0%CC%B9%CC%C1%F6%2C%C5%A9%B1%E2


반응형

'프로그래밍 > JAVASCRIPT' 카테고리의 다른 글

[JAVA SCRIPT] WINDOW.OPEN  (0) 2010.09.01
브라우저 정보 알아오기.  (0) 2010.07.20
Textarea에 현제 글자(문자)의 바이트 수를 알아오기  (0) 2010.07.13
Textarea 글자수제한.  (0) 2010.07.13
escape메서드  (0) 2010.07.07
반응형

escape 메서드는 charstring의 내용을 포함한 문자열 값(유니코드 형식)을 반환합니다. 공백과 문장 부호, 악센트 부호가 있는 문자, 그외 비ASCII 문자는 모두 %xx 인코딩으로 바뀝니다. 여기서 xx는 해당 문자를 나타내는 16진수입니다. 예를 들어 공백은 "%20"으로 반환됩니다.

<body>
<script>
str="Aa?ㄱ음";
v="<table border=1><tr><td>idx</td><td>문자</td><td>escape</td><td>charCode</td><td>encodeURI</td></tr>"
for(i=0;i<str.length;i++){
 v+="<tr>";
 v+="<td>"+i+"</td><td>"+str.charAt(i)+"</td><td>"+escape(str.charAt(i))+"</td><td>"+str.charCodeAt(i)+"</td><td>"+encodeURI(str.charAt(i))+"</td>";
 v+="</tr>";
}
v+="</table>";
document.write(v);
</script>

반응형

+ Recent posts