이번에 소개하고자 하는 플러그인은 BlockUI라는 jQuery플러그인입니다.레이어 팝업만들기에 유용한 플러그인이랍니다~하단 링크를 통해서 다운로드 받으실 수 있습니다.다운로드 :https://github.com/malsup/blockui/우측을보시면 Download ZIP이라는 버튼이 있는데 클릭합니다.압축해제후jquery.blockUI.js 이란 파일을..
이번에 소개할 jQuery 플러그인은 tablednd가 되겠습니다.jQueryUI에서도 sortable이라는 기능을 지원을 하기는 하지만 이 부분은 추후에 포스팅하기로 하겠습니다.일반적으로는 테이블 우측에 위/아래로 버튼을 생성하여 테이블 순서를 변경을 하는것을 가끔 보았습니다.버튼 클릭해서 한줄씩 변경하는것보다는 마우스 클릭 후 드래그앤드롭 기능을 이용하..
보통 통계를 낼 경우 단순 리스트로 데이터를 출력해서 화면에 출력해주곤 하죠 하지만 시각적으로 통계결과를 원하는 클라이언트들도 있습니다. 이럴경우 jqPlot라는 jquery 플러그인을 이용하여 차트를 적용을 해줄 수 있습니다. 이 플러그인은 다양한 종류의 차트를 제공해줍니다. 지원하는 그래프의 종류는 막대,선,원형,도넛등이 존재합니다. 줌기능도 지원이..
이번에 소개하고자 하는 플러그인은 BlockUI라는 jQuery플러그인입니다.
레이어 팝업만들기에 유용한 플러그인이랍니다~
하단 링크를 통해서 다운로드 받으실 수 있습니다.
다운로드 : https://github.com/malsup/blockui/
우측을보시면 Download ZIP이라는 버튼이 있는데 클릭합니다.
압축해제후 jquery.blockUI.js 이란 파일을 프로젝트 경로에 넣어줍니다.
위와같은 구조로 예를 들기위해 js파일을 root 경로에 위치하였습니다.
blockUI는 레이아웃팝업을 쉽게지원해주는 플러그인이기도 하며
AJAX 호출하는동안 화면을 보호하기 위한 목적에도 사용이 됩니다.
호출명령어는
1 2 3 4 | //BLOCKUI 화면 출력 $.blockUI({ //속성추가}); //BLOCKUI 화면 제거 $.unblockUI(); |
입니다.
레이어 팝업에 표출시킬 경우 보여주고자 하는 태그들은 message 속성에 정의를 해주거나 body 태그내에 레이아웃을 제작한 다음 display:none; 속성을 style 속성에 정의를 해준 후 해당 레이아웃을 불러올수도 있습니다.
또한 css속성을 이용하여 레이어팝업의 스타일을 별도로 지정하는것이 가능합니다.
그리고 전체 화면에 레이어팝업을 띄울뿐만 아니라 특정 엘리먼트 영역에 레이어팝업을 띄워주게도 지원을 합니다.
1. 전체 화면에 blockUI적용
2. 일부 엘리먼트영역에 blockUI적용
3. blockUI 영역에 별도의 CSS 적용
이 3가지를 다루어 보도록 하겠습니다.
blockUI 플러그인을 사용하기 위해서는 jQuery include는 필수겠죠?
저는 CDN을 이용하여 jQuery 를 사용하도록 하겠습니다.
1 2 | < script type = "text/javascript" src = "//code.jquery.com/jquery-1.11.0.min.js" ></ script > < script type = "text/javascript" src = "jquery.blockUI.js" ></ script > |
버튼 클릭하여 모달창을 띄운 후 모달창에 존재하는 닫기 버튼을 클릭하여 모달을 제거하도록 해보겠습니다.
1 | < input type = "button" id = "openmodal" value = "모달띄우기" /> |
1 2 3 4 5 6 7 8 | $( function (){ $( "#openmodal" ).click( function (){ $.blockUI({message : "<input type='button' value='모달닫기' onclick='removeModal()' />" }) }) }) function removeModal(){ $.unblockUI(); } |
코드작성이 완료 되셨다면 실행을 해보도록 하겠습니다.
브라우저전체를 어두운 바탕으로 감싼다음 중앙에 닫기 버튼이 생성되었고
닫기버튼을 클릭하여 모달창을 사라지게 하였습니다.
다음은 특정 엘리먼트 내에만 모달창을 띄워보도록 하겠습니다.
특정 엘리먼트영역에 모달창을 띄우고 사라지게 하는 함수는 다음코드를 적용해주셔야 합니다.
1 2 3 4 | //엘리먼트내에 BLOCKUI 화면 출력 $( "selector" ).block( //option); //엘리먼트내에 BLOCKUI 화면 제거 $( "selector" ).unblock(); |
blockUI함수대신 block함수를
unblockUI대신 unblock 함수를
사용하면됩니다.
앞에 셀렉터를 적용해주시면 되겠습니다.
1 2 3 | < input type = "button" id = "openmodal" value = "모달띄우기" /> < br /> < div id = "blocklayer" >여기만< br />모달창으로 감쌉니다</ div > |
1 2 3 4 5 6 7 8 | $(function(){ $("#openmodal").click(function(){ $("#blocklayer").block({message : "< input type = 'button' value = '모달닫기' onclick = 'removeModal()' />"}) }) }) function removeModal(){ $("#blocklayer").unblock(); } |
마지막으로 css 속성을 이용하여 모달의 스타일을 변경해보도록 하겠습니다.
코드는 다음과같이 작성하시면 되겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | $( "셀렉터" ).block({ message : "모달에 출력할 메시지" , css: { border: '3px solid #a00' } }) //또는 $.blockUI({ message : "모달에 출력할 메시지" , css: { border: '3px solid #a00' } }) |
전체페이지에 적용할지 혹은 특정 엘리먼트레이아웃에 적용할지로 나누었지만
실제 속성 적용은 모두 동일합니다.
그럼 유용하게 사용하세요~
by 개발로짜
jQuery Cookie 플러그인을 사용하여 손쉽게 쿠키정보 제어하기 (0) | 2014.10.25 |
---|---|
jQuery Validation 플러그인을 이용하여 손쉽게 검증하기 (1) | 2014.10.22 |
jQuery tablednd 플러그인을 사용하여 테이블을 드래그앤드롭으로 순서변경하기 (0) | 2014.10.15 |
jQuery jqPlot를 사용하여 선형,원형(파이형),막대형 그래프 생성하기 (9) | 2014.10.15 |
jQuery Form플러그인 이용한 ajax 파일업로드하기 + FormData() 추가설명 (26) | 2014.10.10 |
이번에 소개할 jQuery 플러그인은 tablednd가 되겠습니다.
jQueryUI에서도 sortable이라는 기능을 지원을 하기는 하지만 이 부분은 추후에 포스팅하기로 하겠습니다.
일반적으로는 테이블 우측에 위/아래로 버튼을 생성하여 테이블 순서를 변경을 하는것을 가끔 보았습니다.
버튼 클릭해서 한줄씩 변경하는것보다는 마우스 클릭 후 드래그앤드롭 기능을 이용하여
테이블의 정렬순서를 바꾸는것이 편한건 사실이겠죠?
그럼 tablednd 플러그인을 이용하기 위하여 플러그인을 다운로드 받도록 하겠습니다.
하단 링크를 가셔서 우측 Download ZIP버튼을 클릭하시면 됩니다.
https://github.com/isocra/TableDnD
다운로드를 받으셨다면 압축 해제 후
/TableDnD-master/js/ 디렉토리 이동 후 jquery.tablednd.js 파일만을 복사하여
프로젝트 경로에 include 해주도록 합니다.
그럼 기본적인 구조로 예를 들어보도록 하겠습니다.
1 2 | < script type = "text/javascript" src = "//code.jquery.com/jquery-1.11.0.min.js" ></ script > < script type = "text/javascript" src = "jquery.tablednd.js" ></ script > |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | < table border = "1" style = "width: 500px;" > < tr > < td >1</ td >< td >첫번째</ td > </ tr > < tr > < td >2</ td >< td >두번째</ td > </ tr > < tr > < td >3</ td >< td >세번째</ td > </ tr > < tr > < td >4</ td >< td >네번째</ td > </ tr > < tr > < td >5</ td >< td >다섯번째</ td > </ tr > </ table > |
1 2 3 | $( function (){ $( "table" ).tableDnD(); }) |
한번 위의 코드들을 적용한 소스를 실행해보도록 하겠습니다.
위처럼 변경하고자 하는 row를 누른다음 드래그를 하면 위치 이동이 되면서 드롭을 하면 정렬순서가 변경이 됩니다.
기본적인 연동방법에서 추가로 드래그하고자 하는 row를 클릭했을경우 class를 지정하여 색상을 지정해 보겠습니다.
임의의 클래스를 하나 만들어보겠습니다.
1 2 3 | .dragRow { background-color : red ; } |
위와 같은 클래스를 선택된 테이블 row에 적용을 하기위해서는
tableDnD 속성을 다음과 같이 변경해주시면 되겠습니다.
1 2 3 4 5 | $( function (){ $( "table" ).tableDnD({ onDragClass: "dragRow" }); }) |
한번 실행해보도록 하겠습니다.
위와같이 드래그 시작시점에 정의한 css가 적용이되고 드롭시점에서 css가 초기화 되는 결과를 확인 할수 있었습니다.
by 개발로짜
jQuery Cookie 플러그인을 사용하여 손쉽게 쿠키정보 제어하기 (0) | 2014.10.25 |
---|---|
jQuery Validation 플러그인을 이용하여 손쉽게 검증하기 (1) | 2014.10.22 |
jQuery blockUI 플러그인을 이용하여 레이어팝업(모달) 만들기 (2) | 2014.10.21 |
jQuery jqPlot를 사용하여 선형,원형(파이형),막대형 그래프 생성하기 (9) | 2014.10.15 |
jQuery Form플러그인 이용한 ajax 파일업로드하기 + FormData() 추가설명 (26) | 2014.10.10 |
보통 통계를 낼 경우 단순 리스트로 데이터를 출력해서 화면에 출력해주곤 하죠
하지만 시각적으로 통계결과를 원하는 클라이언트들도 있습니다.
이럴경우 jqPlot라는 jquery 플러그인을 이용하여 차트를 적용을 해줄 수 있습니다.
이 플러그인은 다양한 종류의 차트를 제공해줍니다.
지원하는 그래프의 종류는 막대,선,원형,도넛등이 존재합니다.
줌기능도 지원이 되는 플러그인입니다
이제부터 jqPlot 플러그인을 적용해서 샘플로 몇가지의 그래프를 생성해볼까 합니다.
jQuery 플러그인이다 보니 jQuery는 필수로 include가 되있어야 합니다.
저같은 경우는 jQuery CDN을 연동하여 설명을 진행하므로
jQuery연동법은 제외하고 진행하도록 하겠습니다.
우선 화면에 그래프차트를 띄우기 위해서 jqPlot 플러그인을 다운로드 받도록 하겠습니다.
https://bitbucket.org/cleonello/jqplot/downloads/
위 주소로 들어가셔서 원하시는 버전을 다운로드 받도록 하겠습니다.
아무압축파일이나 다운받으시면 되지만 저는 오늘기준 최신버전인
'jquery.jqplot.1.0.8r1250.zip' 파일을 다운로드 받아서 진행하도록 하겠습니다.
지원브라우저는 IE경우 7~ 테스트가 완료되었다니...
왠만하면 동작된다는 의미라는거겠죠? ㅎㅎ
예를 들기전 다운로드 받은 압축 파일 해제후
다음 파일들을 본인의 프로젝트 경로에 include해주도록 하겠습니다.
압축해제후 dist디렉토리를 보시면 위와같이 파일들이 존재하는데
체크한 파일들을 프로젝트내에 INCLUDE를 해주세요
※ 같은명의 CSS 및 JS파일이 있는데 저같은경우는 minify 파일들만 include하였습니다.
그래프차트 출력을 위한 준비가 끝난상태이므로 이제는 실질적인 예를들어보도록 하겠습니다.
라인그래프를 연동하기전 모든 그래프 차트의 출력을 위한 기본 css파일과 js파일들을 INCLUDE해보도록 하겠습니다.
1 2 3 | < link class = "include" rel = "stylesheet" type = "text/css" href = "jquery.jqplot.min.css" /> < script src = "//code.jquery.com/jquery-1.11.0.min.js" ></ script > < script type = "text/javascript" src = "jquery.jqplot.min.js" ></ script > |
위 3가지 파일이 jqPlot의 기본적인 include가 되겠습니다.
다음으로 그래프를 그려줄 영역이 필요하므로 div태그 하나를 body 태그에 선언을 해주도록 합니다.
1 | < div id = "graph" style = "width:300px; height:300px;" ></ div > |
위 처럼 그래프가 그려질 영역을위한 DIV 태그를 작성하셨다면 그래프 그리는 스크립트를 onload함수에 실행을 해보도록 하겠습니다.
1 2 3 4 5 | $( function (){ //1번째 입력값 (그려진 영역의 id값) //2번째 입력값 (그래프내에 들어갈 데이터 값) $.jqplot ( 'graph' , [[1,2,3,4,5,300,30]]); }); |
위에 onload내에 $.jqplot를 적용해주시면 다음처럼 결과가 나온다면 정상적으로 호출이 완료 된것입니다.
마치 티스토리 방문자수 그래프와 같은 화면으로 구현이되었네요 ㅎ
여기 코드에 추가로 X/Y 좌표의 제목 및 그래프 제목을 옵션을 주어서 출력해보도록 하겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | //1번째 입력값 (그려진 영역의 id값) //2번째 입력값 (그래프내에 들어갈 데이터 값) $.jqplot ( 'graph' , [[1,2,3,4,5,300,30]], { title : '그래프 제목옵션' , axes: { xaxis: { label: "X 좌표제목" }, yaxis: { label: "Y 좌표제목" } } } ); |
위와같이 정상적으로 출력이 되었습니다.
막대형은 위의 선형그래프에 플러그인 + 스크립트코드가 추가가 됩니다.
1 2 | < script type = "text/javascript" src = "plugins/jqplot.categoryAxisRenderer.min.js" ></ script > < script type = "text/javascript" src = "plugins/jqplot.barRenderer.min.js" ></ script > |
이제 이어서 막대 그래프를 생성하기 위해서는 다음 코드를 작성하도록 합니다.
※ onload내에 서술해주세요
1 2 3 4 5 6 7 8 9 10 11 12 13 | $.jqplot( 'graph' , [[[ '첫번째' , 50], [ '두번째' , 22], [ '세번째' , 38], [ '네번째' , 30]]], { title: '막대형그래프' , series:[{renderer:$.jqplot.BarRenderer}], axes: { xaxis: { renderer: $.jqplot.CategoryAxisRenderer, label: "X 좌표제목" }, yaxis: { label: "Y 좌표제목" } } }); |
위 코드중 핵심은 series 속성입니다.
플러그인을 막대형 그래프로 호출을 해준다는 속성값인거 같습니다.
선형이랑 막대형 및 원형의 데이터 규격차이는 2번째 입력값에서 여러개의 [] 로 구분을 지어서 값을 정한다는 것입니다.
[]내에 첫번째 값의 경우는 x좌표의 구분값, 두번째 값의 경우는 y좌표의 높이값이 되는겁니다.
한번 위 코드를 기준으로 실행을 해보도록 하겠습니다.
마지막으로 원형그래프(일명 : 파이형)를 출력해보도록 하겠습니다.
원형그래프는 기존 막대그래프에서 추가로 INCLUDE 해준 플러그인 JS파일을 제거 한다음
하단 플러그인을 INCLUDE해주도록 합니다.
1 | < script type = "text/javascript" src = "plugins/jqplot.pieRenderer.min.js" ></ script > |
위 플러그인은 원형그래프로 렌더링 해주기 위한 파일입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | $.jqplot ( 'graph' , [[[ '첫번째' , 50], [ '두번째' , 22], [ '세번째' , 38], [ '네번째' , 30]]], { seriesDefaults: { //원형으로 렌더링 renderer: $.jqplot.PieRenderer, //원형상단에 값보여주기(알아서 %형으로 변환) rendererOptions: { showDataLabels: true } }, //우측 색상별 타이틀 출력 legend: { show: true , location: 'e' } } ); |
그래프 종류도 다양하고 브라우저 환경 + 속성값에 따라 애니메이션 효과도 주는것이 가능합니다.
지원하는 그래프도 많으니 사용하는 종류에 따라 알맞게 골라가면서 적용하시면 되실 겁니다!
by 개발로짜
jQuery Cookie 플러그인을 사용하여 손쉽게 쿠키정보 제어하기 (0) | 2014.10.25 |
---|---|
jQuery Validation 플러그인을 이용하여 손쉽게 검증하기 (1) | 2014.10.22 |
jQuery blockUI 플러그인을 이용하여 레이어팝업(모달) 만들기 (2) | 2014.10.21 |
jQuery tablednd 플러그인을 사용하여 테이블을 드래그앤드롭으로 순서변경하기 (0) | 2014.10.15 |
jQuery Form플러그인 이용한 ajax 파일업로드하기 + FormData() 추가설명 (26) | 2014.10.10 |
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.