간단히 말해 브라우저 창이 특정 크기보다 작은 경우에만 스크립트 (이 경우 Flexslider)를 실행하고 싶습니다.브라우저 너비에 따라 자바 스크립트를 죽이거나 실행하십시오.
즉
미만 480 픽셀 폭 (크기 조정 발사 나에 하나) - Flexslider을 실행
이상 480 픽셀 폭 (크기 조정 발사 나에 하나) - Flexslider 표시 목록을 죽일 '정적'블록/페이지 요소로 항목
현재로서는 브라우저 너비에 따라 addClass 및 removeClass를 사용하여 (어느 정도까지) 작동하는 다음 코드가 있습니다. 그러나 관련 스크립트를 죽이거나 실행하려면 브라우저를 새로 고쳐야합니다. 아마 짐작 했겠지만 나는 JS 전문가는 아니지만 당신의 아이디어를 듣고 싶어합니다.
HTML :
<div id="foo">
<ul class="slides">
<li><img src="images/image1.jpg" width="320" height="320" alt=""></li>
<li><img src="images/image2.jpg" width="320" height="320" alt=""></li>
<li><img src="images/image3.jpg" width="320" height="320" alt=""></li>
</ul>
</div>
JS :
$(document).ready(function() { var pageWidth = $(window).width(); if (pageWidth <= 480) { $("#foo").addClass('flexslider'); $('.flexslider').flexslider({ animation: "slide", directionNav: true }); } $(window).resize(function() { if ($(window).width() > 480) { $("#foo").removeClass('flexslider'); } }); });
JS - 수정 1
$(window).resize(function(){
var windowWidth = $(window).width();
if (windowWidth <= 480) {
$("#foo").addClass('flexslider');
$('.flexslider').flexslider({
animation: "slide",
directionNav: true
});
}
$(window).resize(function() {
if ($(window).width() > 480) {
$("#foo").removeClass('flexslider');
}
});
});
,745,151 5,
JS - 개정 2
$(window).resize(function() {
if ($(window).width() >= 480) {
$("#foo").removeClass('flexslider');
}
if ($(window).width() < 480) {
$("#foo").addClass('flexslider');
$('#foo').flexslider({animation: "slide"});
}
});
코드를 정의 된 함수로 옮기고 페이지가로드되거나 크기가 조정되거나 pageload에서 실행되지 않을 때 해당 함수를 호출합니다. –
고마워요. 글쎄, 나는 중간에 좀있다. 대형 (960px 너비) 창에서 480px로 크기를 조정하면 실제로 Flexslider가 실행되지만 Flexslider는 960px 너비까지 다시 늘리면 남아 있습니다. 위의 내 개정판을 추가했습니다 ... – barmcake
내 코드의 개정판을 사용해보십시오. 그게 어떻게 작동하는지 알려주세요. –