2013-02-01 6 views
3

인터넷에서 일부 콘텐츠를로드하는 Chrome 확장 프로그램이 있습니다. 기본적으로 사용자가 팝업 아이콘을 클릭하면 배경 페이지의 일부 JavaScript가 일부 페이지를로드하고 이미지를 파싱하여 popup.html 페이지에 넣습니다. 문제는 popup.html이 콘텐츠의 실제 크기에 맞게 크기가 조정되지 않는다는 것입니다. StackOverflow에 대한 몇 가지 유사한 질문을 보았습니다. 각 질문에 "<!DOCTYPE html>을 popup.html 페이지 위에 올려 놓으십시오"라고 대답하여 제 경우에는 작동하지 않습니다. 팝업 크기는 매우 작습니다 (약 1cm 제곱).크롬 확장 프로그램 페이지 popup.html의 크기가 조정되지 않습니다.

이전에 나는 너비가 & 인 고정 된 CSS 스타일을 가지고 있었지만 내 콘텐츠가 항상 같은 크기가 아니라는 사실을 알고 있었기 때문에 popup.html 페이지가 콘텐츠에 맞게 자동으로 크기를 조정하고 싶습니다.

저는 최악의 경우 이미지의 너비와 높이를 파싱하여 CSS로 설정할 수 있음을 알고 있습니다.하지만 좀 더 우아한 해결책이있는 것 같습니다.

감사합니다.

답변

2

나는이 문제를 해결할 수있었습니다. 따라서 popup.html에 내용을로드하면 팝업 크기가 자동으로 조정되지 않습니다. 그럴 수있는 방법은 없습니다. 그래서 표시 할 내용을로드 한 후에 페이지의 CSS를 수정하려고 시도했지만 작동하지 않았습니다. 그런 다음 동적으로 크기를 조정할 때 페이지에 숨겨진 내용이 없어야한다는 사실을 알게되었습니다. 웹에서 내용을로드 할 때 숨겨진 div에 전체 페이지를 숨긴 다음 JavaScript를 통해 내가 관심있는 페이지의 요소에 액세스하여이를 가져 와서 팝업 페이지의 보이는 컨테이너에 넣었습니다. 문제를 해결하기 위해 방금 document.getElementById('myHiddenDiv').innerHTML = ""을 통해 "삭제"해야했고 숨겨진 div의 콘텐츠와 마술처럼 팝업 크기가 조정되었습니다.

4

jQuery로 팝업의 크기를 동적으로 조정할 수있었습니다. #menu는 모든 콘텐츠를 래핑 단지 사업부입니다

$('html').height($('#menu').height());

. body의 크기가 제대로 조정되지 않았으므로 사용할 수 없습니다.

높이를 단지 html으로 변경하는 것만으로도 충분합니다.

관련 문제