요소가 페이지에 있으면 페이지 내용을 변경할 수 있습니까?요소가 발견 된 경우 페이지 내용이 변경됩니다.
경우 (window.frames [0] .document.getElementById ("XL")) {// 페이지 acta.html 하중 콘텐츠}
요소가 페이지에 있으면 페이지 내용을 변경할 수 있습니까?요소가 발견 된 경우 페이지 내용이 변경됩니다.
경우 (window.frames [0] .document.getElementById ("XL")) {// 페이지 acta.html 하중 콘텐츠}
프레임에 들어있는 내용이 동일 도메인에있는 경우에만 스크립트가 실행되는 페이지의 Same-Origin Policy - SOP를 참조하십시오.
그렇지 않으면 프레임의 DOM에 액세스 할 수 없습니다.
페이지가 동일한 도메인에 있으면 코드가 완벽하게 유효합니다 (프레임의 페이지가로드되었다고 가정).
업데이트 :
if (window.frames[0].document.getElementById('xl')) {
window.frames[0].location.href = "acta.html";
}
대신의 프레임/iframe 요소에 대한 참조가있는 경우 윈도우의 :
다음, 당신이 할 수있는 프레임의 간단한 변경 location
객체의 내용을 변경하려면 (frame[0]
)이면 src
특성을 사용할 수도 있습니다.
당신은 또한 단지 일을 상단 윈도우의 위치를 변경할 수 있습니다 :
window.location.href = "acta.html";
그러나 변경됩니다, 물론, 페이지의 URL이 너무. 이전과 같이 URL을 유지하려면 기본적으로 현재 메인 윈도우와 숨겨진 프레임을 래핑하는 다른 iframe을 사용해야합니다. 따라서 주소 표시 줄에 표시된 URL은 첫 번째 프레임의 내용을 "acta.html"로 변경하더라도 변경되지 않습니다.
XMLHttpRequest 개체를 사용하여 http 호출을 만들고 페이지 원본을로드 한 다음 현재 페이지 본문을 XHR에서 검색 한 것으로 바꿀 수도 있습니다. 그러나 그것은 추한 것입니다. 이런 종류의 리디렉션은 동일한 URL을 유지하면서 클라이언트 측이 아니라 서버 측에서 수행해야합니다.
페이지와 iframe이 동일한 도메인에 있습니다. 하지만 {} 사이에 무엇을 입력해야합니까? – marius
페이지 B가있는 iframe이 포함 된 페이지 A가 있습니다. 따라서 페이지 B에 특정 요소가 포함되어 있으면 페이지 A의 위치를 변경 하시겠습니까? – ZER0
페이지 A (index.html) 내에 페이지 B가 있습니다. Iframe 페이지 B가 숨겨져 있습니다. 페이지 B에 'xl'요소가 포함되어있을 때 페이지 A (acta.html 콘텐츠)에 다른 콘텐츠를로드해야하지만 동일한 (index.html)이면서 콘텐츠 만 변경하고 URL은 변경하지 않아야합니다. – marius