2012-10-05 2 views
2

그래서, 나는 넓은 모니터에서 2up 레이아웃을 가지고 다음 미디어 쿼리를 사용하여 작은 모니터에서 목록보기가 있습니다. jQuery .show() /. 와이드 스크린 설정에서 요소 숨기기()를 제외하면 모든 것이 잘 작동합니다. 도 잘 작동하지만, 창 크기를 조정할 때 jQuery가 현재 가지고있는 것 .hide() d는 이 아닙니다. 내 미디어 쿼리가 display : block;을 정의 했음에도 불구하고이 나타나지 않습니다. 그 크기의 요소들.jQuery .hide() 미디어 쿼리에 의해 취소 할 수 없습니다.

해당 사이트는 here이고 소스는 on GitHub입니다.

내가 뭘 잘못하고 어떻게 해결할 수 있습니까? 모든 jQuery를 우선

+0

숨기기/숨기기를 취소하려는 특정 요소를 분명히 할 수 있습니까? 왜냐하면, 저는 귀하의 사이트를 방문하여 두 가지 형태로 모두 보았 기 때문에, 이중보기 (와이드 스크린) 및 목록보기 (와이드 스크린이 아닌)가 예상대로 작동하는 것 같습니다. 어떤 특정 요소를 숨기거나 숨기기를 시도하는지 알지 못하면 어떠한 제안도 단지 피상적 일뿐입니다. – jrd1

+0

아, 죄송합니다. 명확하지 않은 경우 : 상단의 버튼을 사용하여 오른쪽에있는 페이지를 순환시킵니다. 그렇게하고 크기를 조정하면 숨겨진 페이지가 보이지 않습니다. 적어도 크롬은 아니야. – jarofghosts

+0

나는 당신이 제안한 것을 시도해 보았습니다. 문제가 프로젝트 자체의 버그 일 수있는 것처럼 보입니다. 소스 코드 자체를 훑어 보는 것 외에도 Github의 원본 개발자에게 연락하여 버그 보고서를 제출하는 것이 더 좋습니다. – jrd1

답변

3

당신이 사용하는 경우 이전 CSS 무엇 때문에 상관없이, 변경 요소의 스타일을 대체하지 :

$("#myelement").hide(); 

그것을 강제로 CSS 표시 속성을 변경합니다, 당신은 여기에 2 가지 옵션이 있습니다.

1) 숨겨진 클래스를 만들어 클래스에 대한 미디어 쿼리를 만들 수 있습니다. 따라서 창이 1000px 이상일 때 display : none; 그러나 그것이 있다면 1000 < 그것은 display : block을 가질 수 있습니다; 다음을 사용 :

hide() 대신.

$(window).resize(function(){ 
    if($(window).width()> 1000){ 
     //Hide or show, or do some pirate stuff 
    }else{ 
     //More pirate stuff 
    } 
}); 

나는 이것이 당신이 찾고 있던 무슨이었다 희망 :

2), 창에 바인더 제본 jQuery를 http://api.jquery.com/resize/의 크기 조정() 이벤트에 당신이 할 수있는이 방법을 재생합니다.