이미지 없이 모서리 라운드 테이블 만들어 최신글 구현
링크
http://php.chol.com/~sung21ce/kimssam/util/round.html (1912) http://php.chol.com/~sung21ce/kimssam/round.php (1689)
어디선가 낚시했다가 필요할것 같아 보관해 놓은 것인데 .
아마 모질라는 잘 모르겠습니다. ^^
링크 #1은 원본을 그대로 이용한 것이고
링크 #2는 최신글에 적용 시켜 보았습니다.
<HTML>
<HEAD>
<TITLE> 모서리 라운드테이블 </TITLE>
</HEAD>
<script>
function roundTable(objID) {
var obj = document.getElementById(objID);
var Parent, objTmp, Table, TBody, TR, TD;
var bdcolor, bgcolor, Space;
var trIDX, tdIDX, MAX;
var styleWidth, styleHeight;
// get parent node
Parent = obj.parentNode;
objTmp = document.createElement('SPAN');
Parent.insertBefore(objTmp, obj);
Parent.removeChild(obj);
// get attribute
bdcolor = obj.getAttribute('rborder');
bgcolor = obj.getAttribute('rbgcolor');
radius = parseInt(obj.getAttribute('radius'));
if (radius == null || radius < 1) radius = 1;
else if (radius > 6) radius = 6;
MAX = radius * 2 + 1;
/*
create table {{
*/
Table = document.createElement('TABLE');
TBody = document.createElement('TBODY');
Table.cellSpacing = 0;
Table.cellPadding = 0;
for (trIDX=0; trIDX < MAX; trIDX++) {
TR = document.createElement('TR');
TD = document.createElement('TD');
styleWidth = '1px'; styleHeight = '1px';
if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null;
else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null;
else if (radius > 2) {
if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px';
if (Math.abs(trIDX - radius) == 1) styleHeight = '2px';
}
if (styleWidth != null) TD.style.width = styleWidth;
if (styleHeight != null) TD.style.height = styleHeight;
if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor;
else if (tdIDX > Space && Space < MAX - tdIDX - 1) TD.style.backgroundColor = bgcolor;
if (Space == 0 && tdIDX == radius) TD.appendChild(obj);
TR.appendChild(TD);
}
TBody.appendChild(TR);
}
/*
}}
*/
Table.appendChild(TBody);
// insert table and remove original table
Parent.insertBefore(Table, objTmp);
}
</script>
<BODY>
<table id="ta" width="300" height="150" border="0" radius="3" rborder="#999999" rbgcolor="#F8F8F8">
<tr>
<td valign="top">테스트입니다</td>
</tr>
</table>
<script>roundTable("ta");</script>
</BODY>
</HTML><div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:54:41 CSS에서 이동 됨]</div>
아마 모질라는 잘 모르겠습니다. ^^
링크 #1은 원본을 그대로 이용한 것이고
링크 #2는 최신글에 적용 시켜 보았습니다.
<HTML>
<HEAD>
<TITLE> 모서리 라운드테이블 </TITLE>
</HEAD>
<script>
function roundTable(objID) {
var obj = document.getElementById(objID);
var Parent, objTmp, Table, TBody, TR, TD;
var bdcolor, bgcolor, Space;
var trIDX, tdIDX, MAX;
var styleWidth, styleHeight;
// get parent node
Parent = obj.parentNode;
objTmp = document.createElement('SPAN');
Parent.insertBefore(objTmp, obj);
Parent.removeChild(obj);
// get attribute
bdcolor = obj.getAttribute('rborder');
bgcolor = obj.getAttribute('rbgcolor');
radius = parseInt(obj.getAttribute('radius'));
if (radius == null || radius < 1) radius = 1;
else if (radius > 6) radius = 6;
MAX = radius * 2 + 1;
/*
create table {{
*/
Table = document.createElement('TABLE');
TBody = document.createElement('TBODY');
Table.cellSpacing = 0;
Table.cellPadding = 0;
for (trIDX=0; trIDX < MAX; trIDX++) {
TR = document.createElement('TR');
TD = document.createElement('TD');
styleWidth = '1px'; styleHeight = '1px';
if (tdIDX == 0 || tdIDX == MAX - 1) styleHeight = null;
else if (trIDX == 0 || trIDX == MAX - 1) styleWidth = null;
else if (radius > 2) {
if (Math.abs(tdIDX - radius) == 1) styleWidth = '2px';
if (Math.abs(trIDX - radius) == 1) styleHeight = '2px';
}
if (styleWidth != null) TD.style.width = styleWidth;
if (styleHeight != null) TD.style.height = styleHeight;
if (Space == tdIDX || Space == MAX - tdIDX - 1) TD.style.backgroundColor = bdcolor;
else if (tdIDX > Space && Space < MAX - tdIDX - 1) TD.style.backgroundColor = bgcolor;
if (Space == 0 && tdIDX == radius) TD.appendChild(obj);
TR.appendChild(TD);
}
TBody.appendChild(TR);
}
/*
}}
*/
Table.appendChild(TBody);
// insert table and remove original table
Parent.insertBefore(Table, objTmp);
}
</script>
<BODY>
<table id="ta" width="300" height="150" border="0" radius="3" rborder="#999999" rbgcolor="#F8F8F8">
<tr>
<td valign="top">테스트입니다</td>
</tr>
</table>
<script>roundTable("ta");</script>
</BODY>
</HTML><div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:54:41 CSS에서 이동 됨]</div>
댓글 11개
20년 전
감사합니다.
불여우에서 잘됩니다.
불여우에서 잘됩니다.
태엽푸는새
19년 전
링크주소 참조
Photofly
19년 전
멋진 팁 이군요....
꼭 써보고 싶네요...감사합니다..
꼭 써보고 싶네요...감사합니다..
19년 전
감사
19년 전
라운드 테이블
홀로남은자
19년 전
blueb에서 본 스크립트네요
resfeel
19년 전
모질라도 잘 되는군요
19년 전
너무 감사합니다^-^
19년 전
이 소스는
Space = Math.abs(trIDX - parseInt(radius));
for (tdIDX=0; tdIDX < MAX; tdIDX++) {
이게 빠져서 에러납니다.
링크 참조하세요.
Space = Math.abs(trIDX - parseInt(radius));
for (tdIDX=0; tdIDX < MAX; tdIDX++) {
이게 빠져서 에러납니다.
링크 참조하세요.
18년 전
감사합니다!!
17년 전
링크가 열리지 않습니다
게시판 목록
개발자팁
개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.
질문은 QA에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 296 | JavaScript |
hwatta
|
20년 전 | 3372 | |
| 295 | JavaScript | 20년 전 | 3912 | ||
| 294 | 기타 | 20년 전 | 3659 | ||
| 293 | JavaScript |
kyodon
|
20년 전 | 3990 | |
| 292 | 기타 |
|
20년 전 | 4240 | |
| 291 | MySQL |
|
20년 전 | 4880 | |
| 290 | 기타 |
|
20년 전 | 4129 | |
| 289 | 기타 |
yesmoa
|
20년 전 | 7370 | |
| 288 | 기타 | 20년 전 | 5019 | ||
| 287 | MySQL |
홀로남은자
|
20년 전 | 6056 | |
| 286 | JavaScript | 20년 전 | 4387 | ||
| 285 | Flash | 20년 전 | 5763 | ||
| 284 | 기타 | 20년 전 | 5956 | ||
| 283 | 기타 | 20년 전 | 8485 | ||
| 282 | 기타 | 20년 전 | 4998 | ||
| 281 | 기타 | 20년 전 | 4127 | ||
| 280 | JavaScript |
크리스탈처럼
|
20년 전 | 6840 | |
| 279 | 기타 | 20년 전 | 3746 | ||
| 278 | 기타 |
|
20년 전 | 5897 | |
| 277 | 기타 | 20년 전 | 5629 | ||
| 276 | 기타 | 20년 전 | 3735 | ||
| 275 | 기타 | 20년 전 | 6243 | ||
| 274 | 기타 |
|
20년 전 | 3996 | |
| 273 | JavaScript | 20년 전 | 5582 | ||
| 272 | Linux | 20년 전 | 5218 | ||
| 271 | MySQL | 20년 전 | 5116 | ||
| 270 | 기타 | 20년 전 | 5807 | ||
| 269 | 기타 |
yesmoa
|
20년 전 | 7324 | |
| 268 | 기타 | 20년 전 | 7517 | ||
| 267 | JavaScript |
|
20년 전 | 3243 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기