1

jQuery 모바일에서 작업합니다. 이 경우 960px 미만의 화면 너비 일 때 div에 데이터 역할 축소를 추가하려고합니다.창 크기가 변경 될 때 div에서 속성 변경

내 예제에서는 사이트를로드 할 때만 작동합니다. 하지만 페이지를 다시로드하지 않고 브라우저의 크기를 조정할 때도 작동합니다.

960 픽셀에서 < 960 픽셀로 변경하는 것은 예를 들어 태블릿을 돌리거나 브라우저 창 크기를 수동으로 조정할 때입니다.

$(document).on("pagebeforecreate", function() { 
    if ($(window).width() < 960) { 
     $(".medis_collaps").attr("data-role","collapsible") 
    } 
}); 

편집

.resize() 내가 = "축소"작업 데이터 역할을하는 페이지를 다시로드해야한다는 것 때문에, 작동하지 않습니다.

+0

[미디어 쿼리] (https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Media_queries) 유용 할 것 – mplungjan

+0

(접을 수있는/접을 수없는) 두 요소를 만들고, 'orientationchange'에 숨기거나 표시하십시오. – Omar

+0

이런 식으로 http://jsfiddle.net/Palestinian/wt4QH/ – Omar

답변

0

사용은 resize

$(window).resize(function() { 
    if ($(window).width() < 960) { 
     $(".medis_collaps").attr("data-role","collapsible") 
    } 
}); 
+0

크기 조정이 작동하지 않습니다. 데이터를 만들기 위해 페이지를 다시로드해야하는 것 같습니다. = "접을 수있는"작업. – Laire

0

당신은 다음과 같은 크기 조정 및로드 이벤트를 바인딩 할 수 있습니다 :이 경우

$(window).on('resize load pagebeforecreate', function(){ 
    if ($(window).width() < 960) { 
     $(".medis_collaps").attr("data-role","collapsible") 
    } 
}); 

적 이벤트에 대해 동일한 기능을 결합 할 필요가 없다.

+0

resize가 작동하지 않습니다. 데이터 롤을 "다시 접을 수 있도록"페이지를 다시로드해야하는 것 같습니다. – Laire

0

당신은 다음과 같이 사용할 수 있습니다

는 아마도
$(document).on("load resize pagebeforecreate", function() { 
    if ($(window).width() < 960) { 
     $(".medis_collaps").attr("data-role","collapsible") 
    } 
}); 
+0

data-role = "collapsible"을 만들기 위해 페이지를 다시로드해야하는 것으로 보이기 때문에 resize가 작동하지 않습니다. – Laire

관련 문제