return -> true, false

* 모든 변수나 프로퍼티를 삭제 할 수 없다. 즉, 객체 자체는 삭제 할 수 없으나 객체의 프로퍼티는 삭제 할 수 있다는 것이다.

ex) var o = {x:1, y:2};

delete o.x; // 객체 프로퍼티 중 하나 삭제

delete o; // 선언된 변수는 삭제 할 수 없다.

typeof o.x; // 존재하지 않는 프로퍼티 "undefined" 반환

delete o.x; // 존재하지 않는 프로퍼티 삭제 true

* 암시적으로 선언된 변수를 지울 때는 delete 연산자를 사용 할 수 있지만, 단 var 문장을 이용해서 선언된 변수는 지울 수 없다.

x = 42; 

delete x 할 경우,

 return true;

( 암시적으로 선언된 변수는 지울 수 있음)

 

var y = 43;

delete y 할 경우,

return false (var로 선언한 변수는 지울 수 없음)

 

delete Math.PI;

return false (미리 정의된 속성은 지울 수 없음)

myobj = new Number(); myobj.h = 4;

delete myobj.h; // 사용자정의 속성은 지울 수 있음.

delete myobj; // return true (암시적으로 선언되었으므로 지울 수 있음)

 

설정

트랙백

댓글

자바스크립트에서 키 이벤트를 처리 할 때 'Tab' 이나 'Backspace' 를 직접 처리 하려면 몇 가지 문제가 있다.

Tab이나 Backspace 모두 브라우저에서 디폴트로 사용되는 키이므로 Tab이 눌렀을 때는 Tab Index에 따라 HTML의 element를 순회하고, Backspace가 눌렀을 때는 이전 페이지로 돌아가는 문제가 발생하게 됩니다.

이러한 문제를 해결하기 위해서는 어떻게 해야 할까요? 전에 조사했던 바로는 setTimeout을 사용하는 편법을 사용 하는 것입니다. 그러나, 이러한 방법을 사용하지 않는 방법도 존재합니다.

 

ex) bool = event.cancelable; or event.preventDefault();

이 두개를 사용하게 되면, 브라우져의 디폴트 동작을 취소 시킬 수 있게 됩니다.

 

preventDefault를 사용할지 or cancelable을 사용 할지 event에 따라 달라지게 됩니다.

(* IE에서는 return false를 해주면 됩니다.)

 

그리고, 이벤트가 발생 했을 때 상위의 element로 이벤트를 전달하고 싶지 않을 때는 위의 cancelable이나 preventDefault가 아니라 stopPropagation을 사용해주면 됩니다.

(* IE에서는 cancelBubble을 사용하면 됩니다.)

event.cancelBubble = true; // for IE

if(event.stopPropagation) event.stopPropagation() ;

 

'J > Javascript' 카테고리의 다른 글

자바스크립트 최적화 (반복문)  (0) 2014.03.19
자바스크립트에서 delete 연산자  (0) 2014.03.19
Enums in Javascript  (0) 2014.03.19
Javascript에서 String 여러 줄 (MultiLine)에 쓰기  (0) 2014.03.19
Script async와 defer  (0) 2014.03.19

설정

트랙백

댓글

Enums in Javascript

J/Javascript 2014. 3. 19. 15:51

function Suit(name){

this._name = name;

}

 

Suit.prototype.toString = function(){

return this._name;

}

Suit.CLUBS = new Suit('clubs');

Suit.DIAMONDS = new Suit('diamonds');

Suit.HEARTS = new Suit('hearts');

Suit.SPADES = new Suit('spades');

 

설정

트랙백

댓글

var a = 'you can start here \

and continue here \

and then finish it up here.';

설정

트랙백

댓글

스크롤 관련 CSS

C/CSS 2014. 3. 19. 15:28

scrollbar-arrow-color : #fff;

scrollbar-face-color : silver;

scrollbar-darkshadow-color : silver;

scrollbar-highlight-color : silver;

scrollbar-track-color : #ddd;

scrollbar-3dlight-color : silver;

 

여러가지 스크롤 관련 바꾸는 게 있는 데, 한번 씩 조작해 가면서 해봐야 어떤 부분을 의미하는 지 이해할 수 있다.

'C > CSS' 카테고리의 다른 글

facebook comments 리사이즈  (0) 2014.08.04
CSS 기초 공부  (0) 2014.03.23
CSS zoom 오브젝트를 확대 시켜 주는 속성  (0) 2014.03.19
CSS로 심플라인 테이블  (0) 2014.03.18
div에서 vertical-align : middle 적용하기  (0) 2014.03.18

설정

트랙백

댓글

{ zoom : 값 } 속성 값 : normal, 숫자 (1.0 = 기본 값), 퍼센트(%)

'C > CSS' 카테고리의 다른 글

CSS 기초 공부  (0) 2014.03.23
스크롤 관련 CSS  (0) 2014.03.19
CSS로 심플라인 테이블  (0) 2014.03.18
div에서 vertical-align : middle 적용하기  (0) 2014.03.18
Table 태그 CSS  (0) 2014.03.18

설정

트랙백

댓글

Script async와 defer

J/Javascript 2014. 3. 19. 15:16

<script async src="*.js" onload="myInit()"></script>

<script defer src="*.js" onload="myInit()"></script>

 

async는 window의 load event 전 내려받는 즉시 바로 실행

defer는 parsing 작업이 끝난 후, DOM Content Loaded event 전에 문서에 삽입된 순서에 따라 실행.

 

script가 문서를 직접 만지고 조작하거나 서로 간 로딩 순서가 중요할 경우엔 defer 속성을 쓰고,

그렇지 않으면 async 속성을 써서 웹 페이지 로딩 속도를 줄일 수 있다.

* IE에선 아직 async 지원 *

 

 

설정

트랙백

댓글

table .listStyle {

border-collapse : collapse;

border-width : 1px 0px 0px 1px;

border : solid 0px;

border-color : #E3E3E3;

width : 100%;

}

 

table .listStyle td, table .listStyle th{

min-height : 18px;

padding-left : 3px;

border-width : 0px 1px 0px;

border-style : solid;

border-color : #E3E3E3;

}

table .listStyle th{

background-color : #FAFAFA;

font-weight : normal;

}

 

<table class='listStyle'>

<colgroup><col width='50%' /></colgroup>

<thead><tr><th></th><th></th></tr></thead>

<tbody><tr><td></td><td></td></tr></tbody>

</table>

설정

트랙백

댓글

* line-height : height 값과 동일하게 설정 ※ 다만 한 줄일 경우에만

.line{

font-size : 9pt;

border : 1px solid black;

whilte-space : nowrap;

height : 18px;

line-height : 18px;

}

 

<div class='line'> ,,,,, </div>

설정

트랙백

댓글

ShowModalDialog -> 부모창 제어 X

ShowModalessDialog -> 부모창 제어 O

[모달창 -> 부모창 접근]

-> 모달창에서 parent.window.dialogArguments.document

[부모창 -> 모달창 접근]

-> 모달창 띄울 때 전역 변수 생성

var winObj = null;

function popupWinmodal(){

var winObj = '모달 및 모달리스 오픈.';

}

-> 부모창에서 winObj.document

다만 부모창에서 접근 할 경우 id를 부여해서 속성에 접근하고 style, display 등의 기본적인 몇가지 함수를 사용할 수 없음.

'부모창 -> 모달창[iframe] -> ifrmae 안의 문서

[ 모달 및 모달리스 폼값 post 방식으로 자신으로 전속 ]

<head> 와 </head> 사이에 <base target='_self' /> 선언 or ...

window.name = '이름' 선언하고 폼 타겟을 self로 하던가...

 

 

ex) opener

A.html

var params = [1, 2];

var returnVal = window.showModalDialog('popup.html', dialogLeft : 0px; edge : sunken; center=Yes; help : No; resizable : No; status : No;');

var params = window.dialogArguments;

 

 

B.html

var param1 = params.param1;

var param2 = params.param2;

window.returnValue = [param1 , param2];

 

--- 확인 해봐야함.

설정

트랙백

댓글