블로그 이미지
올해목표 // 10월 어학연수 떠나자~ 자수씨

카테고리

전체글 (1457)
Brand New! (28)
주절주절 (213)
MOT (11)
해외쇼핑 (49)
쇼핑노트 (150)
취미생활 (94)
iPhone (4)
Eclipse (121)
Google (83)
Spring (31)
JAVA (176)
JavaScript (59)
WEB (49)
Database (20)
OS (26)
Tools (8)
Tips (26)
IT정보 (1)
Book (21)
Programming (37)
외부행사 (43)
주변인들 (17)
여행노트 (60)
학교생활 (30)
회사생활 (52)
사회생활 (5)
외국어공부 (12)
잡동사니 (30)
Total
Today
Yesterday
 
04-18 18:32
 

달력

« » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
 

최근에 올라온 글

최근에 달린 댓글




갑자기 찾아든 오류... 분명 크롬에서는 이런일이 없었는데... 같은 부분인데 일부 페이지에서만 발생한다.


jquery 오류인가 싶어서 찾아보니 그건 아닌 듯 하다. 가장 도움이 된 링크(http://kr.tutorialboat.com/73) 를 보면 target 에 스페이스가 들어갈 경우 IE 에서만 간혹 발생한다고 한다.


target 에 대쉬(-) 를 넣었는데, 그게 문제였나보다.



음... 조금 더 찾아보니 스크립트 오류가 있었다. 이러한 경우 타겟에 대쉬나 스페이스가 들어가면 잘못된 인수 오류가 발생하는 듯 하다.




Posted by 자수씨
, |


최근에 연봉이랑 잡다구리한 것 때문에 신경을 많이 못 쓰다가 최근 여유가 좀 생겨서 Sencha 블로그를 둘러보다가 CI 관련 글을 보는데 Jasmine 이라는 프로젝트가 눈에 띄였습니다. 프로젝트 홈에 들어가 보았더니 먼가 몽롱한 분위기의 페이지가...

Jasmine is a behavior-driven development framework for testing your JavaScript code.
구글 번역을 빌리자면~ "재스민 자바 스크립트 코드 테스트하기위한 행동 기반의 개발 프레임 워크입니다."




아직 자세한 내용은 살펴보지 않아 잘 모르겠지만 관심이 가네요~



Posted by 자수씨
, |


중괄호 '{ }' 로 피연산자의 id 가 정의된 수식 파서를 개발해야할 일이 있어, 학부 때 배웠던 자료구조 책을 펼쳐보다가 좌절을 하고 고민하고 있었습니다.

{id} + {id2} * 0.1 * {id3}

위와 같은 식이 있을 경우 아이디와 맵핑이 되는 값을 치환하여 파싱을 하고 계산을 해야 하는데...
 
계속 고민하다가 떠올린 것이 Javascript eval 함수였습니다. 이걸 자바에서 가능하게 해주는 것이 javax.script.ScriptEngine 입니다. (예전에 Rhino 라는 이름으로 자바에서 사용하는 스크립팅 엔진이라는 것을 들었는데 JDK 1.6 에서 포함된 것 같습니다. 정확하진 않아요;;;)

ㅁ JAVA


ㅁ JavaScript



eval 을 이용하면 문자열도 자연스럽게 합칠 수 있답니다.

이제 적용할 일만 남았네요~

Posted by 자수씨
, |

완전 고생 끝에 찾은 정보입니다... (간단하긴 했는데 -_ㅜ)

구글에 여러가지 키워드로 검색도 해보고 검색결과로 테스트를 해봐도 찾을 수가 없어서 마지막 방법으로 VBScript 로 검색해보니 아래와 같은 방법이 있었습니다. =ㅁ=... 그 내용을 힌트로 자바스크립트로 샤샥... 관련 함수를 만들어 봤습니다.




'Scripting.FileSystemObject' 의 GetSpecialFolder() 함수를 이용하여 여러가지 OS 특정 폴더를 확인할 수 있습니다.

GetSpecialFolder Method

Returns the special folder object specified.

object.GetSpecialFolder(folderspec)

  Arguments

object

Required. Always the name of a FileSystemObject.

folderspec

Required. The name of the special folder to be returned. Can be any of the constants shown in the Settings section.

  Settings

The folderspec argument can have any of the following values:

Constant

Value

Description

WindowsFolder

0

The Windows folder contains files installed by the Windows operating system.

SystemFolder

1

The System folder contains libraries, fonts, and device drivers.

TemporaryFolder

2

The Temp folder is used to store temporary files. Its path is found in the TMP environment variable.

The following example illustrates the use of the GetSpecialFolder method.


출처: MSDN (http://msdn.microsoft.com/en-us/library/a72y2t1c(VS.85).aspx)

제가 원하는 것은 Temp 디렉토리였기 때문에, GetSpecialFolder(2) 로 원하는 경로를 가지고 왔습니다만, 윈도우 폴더나 시스템 폴더를 확인하려면 파라미터 값을 달리 하여 호출하면 원하는 결과를 얻을 수 있습니다.



이제 남은 건 서버에 저기에 있는 파일을 올려야 하는데... 자바스크립트로는 불가능하고 ActiveX 아니면 swf 로 처리를 해볼까 생각 중입니다.

Posted by 자수씨
, |

'{ A: "AA", B: "BB" }'

위와 같은 스트링을 자바스크립트에서 객체화 하려면 어떻게 할까요?

var jsonStr = '{ A: "AA", B: "BB" }';
var obj = eval(jsonStr);

위와 같은 방식으로 하면 아래와 같은 오류가 발생합니다.

오류:  "';'가 필요합니다."

음... -ㅁ-;;; 일단은 아래와 같이 땜빵을 하였습니다.

var jsonStr = '{ A: "AA", B: "BB" }';
eval('var obj = ' + jsonStr + ';');



ExtJS 라이브러리를 보니 JSON 스트링을 괄호로 감싸서 처리를 하네요...

var jsonStr = '{ A: "AA", B: "BB" }';
var obj = eval('(' + jsonStr  + ')');



캬캿 잘 됩니다.


Posted by 자수씨
, |

운영 지원을 위한 툴을 구성하다 보니 새로운 세션으로 브라우저를 띄우는 것이 필요하였습니다.

여러 방식으로 찾아보았으나 공식적으로 지원해주는 API 는 찾을 수가 없었습니다.

그래서 찾아낸 것이 'ShellExecute' 메소드 였습니다. (참고사이트: MSDN ShellExecute Method)

IShellDispatch2.ShellExecute(sFile [, vArguments] [, vDirectory] [, vOperation] [, vShow])

자세한 파라미터는 위의 MSDN 페이지를 확인하면 될 것 같고...
원래의 목적인 IE 브라우저 띄우는 법은 아래와 같습니다.

var url = 'http://...';
var objShell = new ActiveXObject("Shell.Application");

objShell.ShellExecute("iexplore.exe", url, "", "open", 1);

그냥 이렇게 함수만 호출하면 "사용 권한이 없습니다." 라는 스크립트 오류만 보이게 됩니다.

아래와 같이 스크립팅 옵션을 변경합니다.



일단은 목적은 달성하였으니... 다른 좋은 방법이 없는지 운이 좋으면 찾게 되겠죠~

아참! IE 8은 세션을 공유하므로 웹 개발자들에게는 대 재앙...으로 다가올 뻔한... Windows 7 + IE 8 요 포스팅을 참고하시면 도움이 될 것 같습니다.



Posted by 자수씨
, |

자식 윈도우에서 부모 윈도우를 핸들링 하려면 opener 라는 object 를 이용하면 됩니다.

하지만 부모 윈도우에서 자식 윈도우들에 대한 참조는 기본적으로 제공해주지 않는 것 같아서...
만들어보았습니다.




위 에서 보듯이 그냥 window.open 을 사용하면 됩니다.

그리고 각 윈도우의 레퍼런스를 따로 저장하여 사용하는 방식입니다. (단순 무식하게 만들었습니다.)


브라우저별로 문제는 없는데 큼큼...  먼가 깔끔한 방법이 없는가 고민 중 입니다.



Posted by 자수씨
, |

flex 로 간단한 위젯을 만들어 보려고 작은 시도를 해 보았습니다.

어찌저찌 만들었으나 crossdomain 문제... (어떤 사이트의 rss 를 읽어와서 뿌려주는 거였는데..)

ajax 로 데이터를 읽어와서 flex 로 넘겨주려 하엿으나 인코딩 문제 (rss 데이터가 euc-kr)

iframe 에서 rss 를 로드하여 넘겨주려 하였으나... IE 버전이 올라가면서 하위 iframe 내부에 access 할 수 없는 문제에 봉착하였습니다.


script injection 으로 인한 문제를 막기위해서 나온 기술들이 저의 시도를 무색하게 만들어버렸습니다.

-_ㅜ...

Posted by 자수씨
, |

[JavaScript] replaceAll

JavaScript / 2009. 8. 12. 10:59

예전에 한참 스크립트와 생활을 할 때 봤던 내용인데 까먹을까봐 정리해야 겠습니다 ㅋㅋㅋ



String의 prototype에 replaceAll함수를 추가하는 방식입니다.

split함수를 이용하여 바꿀 부분으로 자르고 join으로 합치는 방식은 어떤 분이 생각했는지 몰라도 참 대단한 발상인 것 같았습니다.

Split, Join 함수의 정의를 보면 다음과 같습니다.
split Method (Windows Scripting - JScript)

Returns the array of strings that results when a string is separated into substrings.

stringObj.split([separator[, limit]])
stringObj

Required. The String object or literal to be split. This object is not modified by the split method.

separator

Optional. A string or an instance of a Regular Expression object identifying one or more characters to use in separating the string. If omitted, a single-element array containing the entire string is returned.

limit

Optional. A value used to limit the number of elements returned in the array.

출처: MSDN (http://msdn.microsoft.com/en-us/library/t5az126b(VS.85).aspx)

join Method (Windows Scripting - JScript)

Updated: March 2009

Returns a string value consisting of all the elements of an array concatenated together and separated by the specified separator string.

arrayObj.join(separator) 
arrayObj

Required. An Array object.

separator

Required. A String object used to separate one element of an array from the next in the resulting String object. If omitted, the array elements are separated with a comma.

출처: MSDN (http://msdn.microsoft.com/en-us/library/59x7k999(VS.85).aspx)
split은 문자열 뿐만아니라 정규식으로도 잘라낼 수 있기 때문에 자바에서 쓰는 replaceAll과 거의 유사하게 결과를 볼 수 있을 것이라 생각됩니다. 하지만 수행속도는 당연히 떨어지겠죠...



요즘 회사일이 너무 자주 바껴서 정신이 읍네요 -_ㅜ...


Posted by 자수씨
, |

jQuery 책 도착~

Book/IT 관련 / 2008. 10. 21. 15:43

지난 번에 주문했던 jQuery 책 두 권이 배송되었습니다.




열심히 읽어봐야겠습니다.

실력향상을 위해~~~~

Posted by 자수씨
, |

글 보관함

최근에 받은 트랙백