제목 | css, js 파일 로드 질문입니다. | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 소연신 | 작성시각 | 2017/02/13 12:18:06 |
|
|||
좋은 하루 되세요.
기본적으로 헤드 안에 css랑 js파일을 로드 하는데.. 예를 들어 로그인의 경우 로그인.css랑 로그인.js 이런식으로 따로 만들었다면.. 이건 로그인 화면에서만 필요하잖아요? 모든 페이지에서 로드할 필요 없이.. 지금 제가 하고 있는 건.. 모든 페이지에서 필요한 기본 태그에 로그인페이지면 로그인css..js파일만 따로 로드하고 있습니다. 그러니까 헤더 파일이 여러개 생기겠죠. iframe으로 게시판이랑 여러가지 나타내고 있는데 그 때도 iframe용 헤더.. (물론 태그만 몇개 들어있습니다.) 이런 식으로 하고 있는데 ..이게 맞는 방법인가요? 방법론의 차이겠지만.. 한꺼번에 로드하던지 아니면 나눠서 로드하는 건데... 컨트롤러에서 직접 로드가 되면 페이지를 따로 만들필요가 없는데 혹시 그런 방법이 있는지요. 아니면 제가 한 방식대로 해야되는건지 잘 모르곘네요. 답변 부탁드립니다! |
|||
다음글 | 전역변수 선언 질문입니다. (1) | ||
이전글 | CI3.0세션 관련해서 질문드립니다.. (1) | ||
kaido
/
2017/02/13 13:25:56 /
추천
0
|
소연신
/
2017/02/13 14:02:40 /
추천
0
@kaido 답변 고맙습니다! 한 가지 더 여쭤보고 싶은 건.. 지금 remap으로 헤더 푸터 파일을 올리고 있는데 거기에 태그를 로드시키려면 결국 그것도 파일을 따로 만든 걸 로드 시키는 거겠죠? 예를 들어 <link href="/static/css/board.css" rel="stylesheet" /> 이거 한 줄만 추가 시킬 수가 있는건가요?
주소로 하는 게 제일 간편한건 아는데ㅜ 이게 메인 페이지에서 게시판을 누르면 아이프레임으로 컨텐트 부분만 나오게 하고 있습니다. 주소는 변동이 없죠. 그래서 주소를 이용할 수가 없어서요. 그럼 결국 헤더가 따로 필요한 부분 별로 헤더 파일을 만드는 것 뿐인거 같네요. 그래도 주소가 먹히는 부분에선 주소로 처리할테니 파일이 몇개는 줄겠네요. 감사합니다! |
kaido
/
2017/02/13 14:08:44 /
추천
0
어렵게 생각 하실것 없습니다. ifream 을 사용하면 당연하게도 따로 헤더를 적용하게 됩니다. 그럼 ifream으로 불러오는 컨트롤러쪽에서 조건을 주면 됩니다.
ifream 간단하게 생각 하세요. ifream 호출하는 주소를 브라우저에 넣어서 직접 들어가는것과 ifream으로 호출하는 것과의 차이는...? 부모창의 주소가 변하지 않는 것하고 아무련 관련이 없습니다.
페이지 설정을 또 중복으로 불러오는 이런 문제를 해결하기 위해서 jQeury .load() 이란 이벤트가 있긴 합니다. 한번 눈여겨 보시면 재미날것 입니다. |
소연신
/
2017/02/13 14:31:16 /
추천
0
@kaido 어라...되네요;; 저번주 금요일에 했을 땐 안되길래..주소문제구나 싶어서 파일을 만든거였는데.. 다시해보니 되네요; 뭘 잘못했던 거지.. 답변 고맙습니다. 아! 한 가지 더 여쭤보면 일단 헤더파일에 조건을 줘서 특정 컨트롤러 일 때 특정 태그를 로드하게 해놨는데..이렇게 하다보니 if문이 꽤 길어지는데.. 이건 크게 문제 없을까요? |
kaido
/
2017/02/13 15:01:59 /
추천
0
그거 길어져봤자 몇M 되나요? ㅎㅎ css 문장 길이 만큼 먹는다고 보시면 됩니다. |
소연신
/
2017/02/13 15:14:22 /
추천
0
@kaido 넵 고맙습니다. 월요일 잘 보내세요! 궁금한 거 있으면 또 여쭤볼께요 고맙습니다! |
네. 생각 하신 대로 전부 맞습니다.
login.css 를 모든 페이지에서 전부 사용할 필요는 없습니다.
퍼포먼스도 더 떨어질테구요.
다만 관리의 편리성을 위해서 한번에 로드해서 사용합니다.
2. 컨트롤러에 따라서 로드하는 방법들이 있습니다.
컨트롤러에 _remap 등을 사용해서 로드하는 방법이 있고, 훅으로 한번에 템플릿 관리하면서 로드하는 방법도 있으며,
header.php 파일에 컨트롤러명에 따라서 로드 하는 파일을 구분지을 수도 있습니다.
이건 정해진 정답이 아니라 개발자의 요령에 가까운 것입니다.
생각 하신대로 도전해 보심을 추천해 드립니다.