2011-12-09 3 views
0

jQuery를 사용하여 HTML 요소의 존재 여부를 테스트 할 수 있습니다. IFRAME 내부 요소에 대해 동일한 기능을 수행 할 수있다jQuery를 사용하여 iframe 내부에 HTML 요소가 있는지 테스트하려면 어떻게해야합니까?

하나 예를 들어,? 내 최고의 시도 :

if($("#frameId").contents().find('elementName').length > 0) 
{ 
    // do something with the element 
} 

편집 : 도메인 간 토끼를 쫓는 방지하기 위해, 예, 파일이 동일한 도메인에 (예정)한다고 가정합니다.

+2

이 프레임 간 도메인입니까? – MilkyWayJoe

+0

좋은 질문입니다. 둘 다 현재 (dev에있는 동안) 로컬 파일 시스템에서 온 것입니다. 결국 HTML 페이지가 도메인에서 제공되고 iframe의 내용이 로컬 파일 시스템에서 끌어다 놓을 수 있습니다. –

+0

dev 환경의 경우 브라우저와 관련된 특정 파일에 대해 동일한 출처 정책을 확인해야합니다. 이것은 귀하의 도메인에 대한 mozilla https://developer.mozilla.org/En/Same-origin_policy_for_file%3A_URIs의 페이지입니다. 페이지는 동일한 도메인의 페이지 여야합니다. –

답변

0

누군가가 정답을 게시,하지만 그것을 삭제. 이유를 모르겠다. 이것은 효과가 있습니다 :

if($("#frameId").contents().find('elementName').length) 
{ 
    // do something with the element 
} 

감사합니다, 신비 남자!

0

i 프레임이 기본 페이지와 동일한 도메인에있는 경우에만이 작업을 수행 할 수 있습니다. 그렇지 않으면 작동하지 않습니다.
동일한 도메인에 있으면 올바르게 작동합니다.

관련 문제