2010-04-28 6 views
0

암호 상자에 jQuery 플러그인을 만들었습니다. jQuery 선택기를 통해 전달되는 입력에 비밀번호 생성 버튼 및 강도 표시기를 추가합니다.자바 스크립트 네임 스페이스 문제 (내 생각 엔)

jquery.password.js inputPassword.position().top의 154 & 155 줄의 코드에 문제가 있습니다. 오류 메시지가 올바른 위치에 나타나지 않도록 입력 상자의 정확한 위치를 반환하지 않습니다.

이것은 아마도 올바른 네임 스페이스 또는 이와 비슷한 것이 아닌 의 문제 일 것이라고 생각하지만 이러한 것들이 javascript에서 어떻게 작동하는지 완전히 이해하지 못했습니다 ... 이것은 내 첫 번째 jQuery 플러그인입니다.

감사

** 링크를 제거 ***

그것은 네임 스페이스는,이 객체가 숨겨 하였다되지 않았기 때문에. 그래서 고정 : if (inputPassword.is(":visible")) { positionObject = inputPassword; } else { positionObject = inputPlain; }

답변

0

position()는 절대적 위치는 위치로하려는 요소로, 그러나, 부모를 기준으로 오프셋 (offset)를 돌려줍니다 당신은 당신이 대신 offset()을 사용하는 경우 작동 찾을 수 있습니다.

offset()/position()을 검색하는 동안 편집 : 이 표시되지 않습니다. 문서 : 참고 : jQuery는 숨겨진 요소의 오프셋 좌표를 가져 오는 것을 지원하지 않습니다.

+0

오프셋에 대한 링크가 올바르지 않습니다. 여기에서 찾을 수 있습니다. http://api.jquery.com/offset/ – rahul

+1

아니요, 시도했지만 화면의 왼쪽 상단에도 상대적으로 왼쪽에 위치합니다. – ianbarker

+0

@rahul : 죄송합니다. – Matt

관련 문제