티로그

skin/board/gallery/list.skin.php 반응형으로 수정해보기

· 2022-10-28 (금) 15:17:40 · 4846 · 7

그누보드 기본 gallery 스킨의 list.skin.php 이미지 나열부분 자바스크립트로 반응형으로 수정하는 코드입니다.

    <script>

      $(function() {

        var bo_gallery_cols = <?= isset($bo_gallery_cols) && is_numeric($bo_gallery_cols) ? $bo_gallery_cols : 4 ?>;

       

        $('.gall_img').attr('style', '');

        $('.gall_img > a').each(function(idx, el) {

          var img_url = $(this).find('>img').attr('src');

          $(this).css({

            display: 'block',

            position: 'relative',

            width: '100%',

            backgroundImage: 'url(' + img_url + ')',

            paddingTop: '60%',

            backgroundPosition: 'center',

            backgroundRepeat: 'no-repeat',

            backgroundSize: 'cover',

            border: '1px solid #ccc',

            borderRadius: '4px'

          });

        });

        $('.gall_img > a > img').hide();

        $('.gall_img > a > .no_image,.gall_img > a > .is_notice').attr('style', '').css({

          position: 'absolute',

          left: '0px',

          top: '0px',

          width: '100%',

          height: '100%',

          display: 'flex',

          alignItems: 'center',

          justifyContent: 'center'

        });

 

        function gall_ul() {

          var ww = $(window).width();

          var new_bgcs = 4;

 

          //-----------------------{{{ 이부분을 넓이에 맞게 수정하세요

          if (ww >= 992) {

            new_bgcs = 4;

          } else if (ww >= 768) {

            new_bgcs = 3;

          } else if (ww >= 576) {

            new_bgcs = 2;

          } else {

            new_bgcs = 1;

          }

          //-----------------------

          if (bo_gallery_cols == new_bgcs) return;

 

          bo_gallery_cols = new_bgcs;

          // 클레스 제거

          var remove_class = 'box_clear';

          for (var i = 0; i <= 10; i++) {

            remove_class += ' col-gn-' + i;

          }

          $('#gall_ul .gall_li').removeClass(remove_class);

 

          //클레스 추가

          var add_row_class = 'col-gn-' + bo_gallery_cols;

          $('#gall_ul .gall_li').addClass(add_row_class);

          $('#gall_ul .gall_li').each(function(idx, el) {

            var $this = $(this);

            if (idx && (idx % bo_gallery_cols == 0)) {

              $this.addClass('box_clear');

            }

          });

        }

        gall_ul();

        $(window).resize(function() {

          gall_ul();

        });

      });

    </script>

 

    <!-- 페이지 -->

    <?php echo $write_pages; ?>

    <!-- 페이지 -->

 

|

댓글 7개

유용한 자료 감사합니다.
2022-10-29 (토) 18:33:11
멋지네요.. 감사합니다.
감사 합니다.
2022-11-01 (화) 10:11:48
정말 고마워요..!
감사합니다.
감사합니다
좋은정보 감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
22-12-09 조회 4,885
22-12-09 조회 4,706
22-12-07 조회 3,584
22-12-06 조회 5,707
22-12-03 조회 5,697
22-12-02 조회 4,856
22-11-30 조회 7,664
22-11-25 조회 4,613
22-11-22 조회 4,399
22-11-20 조회 4,093
22-11-16 조회 5,662
22-11-15 조회 4,062
22-11-15 조회 4,845
22-11-14 조회 4,008
22-11-10 조회 5,066
22-11-08 조회 4,687
22-10-28 조회 4,847
22-10-27 조회 5,533
22-10-26 조회 4,376
22-10-25 조회 5,244
22-10-22 조회 4,537
22-10-19 조회 5,038
22-10-18 조회 3,998
22-10-16 조회 4,534
22-10-16 조회 4,557
22-10-12 조회 5,721
22-10-04 조회 6,361
22-09-28 조회 5,662
22-09-28 조회 4,689
22-09-27 조회 8,603