<include target="a.html"/>
를 레이아웃 하단에서 펼치기(기본은 접혀있음) 했을 경우 보여주는 방식으로 하고 있어요
다만 사이트가 열릴때
<include target="a.html"/>까지 한꺼번에 다 열리고 접혀있는 형태인데
이걸 펼치기를 했을때 (특정 불러오는 버튼) a.html를 로드 시킬수는 없을까요?
<include target="a.html"/>
를 레이아웃 하단에서 펼치기(기본은 접혀있음) 했을 경우 보여주는 방식으로 하고 있어요
다만 사이트가 열릴때
<include target="a.html"/>까지 한꺼번에 다 열리고 접혀있는 형태인데
이걸 펼치기를 했을때 (특정 불러오는 버튼) a.html를 로드 시킬수는 없을까요?
<include> 태그에 바로 CSS / JS를 적용하시면 안될겁니다.
<div id="section-toggle" style="display: none;"> <include target="a.html" /> </div> <a href="#" id="button-toggle">토글</a> <script> (function($){ $('#button-toggle').click(function(){ var disp = $('#section-toggle').css('display'); $('#section-toggle').css('display', (disp == 'none') ? 'block' : 'none'); }); })(jQuery); </script>
<script> document.getElementById('button-toggle').onclick = function(){ var disp = document.getElementById('section-toggle').style.display; document.getElementById('section-toggle').style.display = (disp == 'none') ? 'block' : 'none'; }; </script>
<block cond="Context::get('lazyload') == 'true'"><include target="a.html" /></block> <div id="lazyload"></div> <a href="#" id="btn-lazyload">로드</a> <script> (function($){ $('#btn-lazyload').click(function(){ $.get('{getUrl("lazyload", "true")}', function(data){ $('#lazyload').html(data); }); }); })(jQuery); </script>
CONTENT // MUST INCLUDED {@ exit()}
a.html 에서 CSS/JS 등의 load 태그 사용은 고려되지 않았으므로, 참고하세요.
예를 들어 가이드라는 페이지에 저 기능을 추가하고 가이드 페이지 코드가 guide 라면
jQuery('#lazyload').load('https://도메인/guide?lazyload=true');
이런식으로 되지 않을까요
a.html 파일은 기존에 하신대로 layout.html 파일과 같은 위치에 그대로 두고요
얻어배우고 갑니다 ㅋ
<include target="a.html" style="display:none;" id="click_event"> 으로 해두면 아마 안뜰거에요.
이렇게 해서, 스크립트에서는 click_event가 눌렸을때, display:block; 으로 바꾸게 하거나,
a.html 의 body style을 none 으로 한 다음 클릭시 display:block; 처리가 인상적인거 같습니다.