[툴팁] 성능을 고려해서 jquery 와 자바스크립트를 잘 선택해서 사용해야합니다.
예를 들면 툴팁같은경우
jquery 를 쓰면 더 느리게 처리하는 경우가 있습니다.
그럴때는 순수 자바스크립트로만 툴팁을 적용하면 훨씬 빠른 효과를 얻을수있습니다.
// tooltip.js
[code]
var preview="";
var gobj="";
function attachEvent_(obj, evt, fuc, useCapture) {
if(!useCapture) useCapture=false;
if(obj.addEventListener) { // W3C DOM 지원 브라우저
return obj.addEventListener(evt,fuc,useCapture);
} else if(obj.attachEvent) { // MSDOM 지원 브라우저
return obj.attachEvent("on"+evt, fuc);
} else { // NN4 나 IE5mac 등 비 호환 브라우저
MyAttachEvent(obj, evt, fuc);
obj['on'+evt]=function() { MyFireEvent(obj,evt) };
}
}
function detachEvent_(obj, evt, fuc, useCapture) {
if(!useCapture) useCapture=false;
if(obj.removeEventListener) {
return obj.removeEventListener(evt,fuc,useCapture);
} else if(obj.detachEvent) {
return obj.detachEvent("on"+evt, fuc);
} else {
MyDetachEvent(obj, evt, fuc);
obj['on'+evt]=function() { MyFireEvent(obj,evt) };
}
}
function MyAttachEvent(obj, evt, fuc) {
if(!obj.myEvents) obj.myEvents= {};
if(!obj.myEvents[evt]) obj.myEvents[evt]=[];
var evts = obj.myEvents[evt];
evts[evts.length]=fuc;
}
function MyFireEvent(obj, evt) {
if(!obj.myEvents || !obj.myEvents[evt]) return;
var evts = obj.myEvents[evt];
for (var i=0;i<len;i++) {
len=evts.length;
evts[i]();
}
}
function previewShow(e, obj, pv) {
preview=pv;
gobj=obj;
attachEvent_(obj, "mousemove", previewMove, false);
attachEvent_(obj, "mouseout", previewHide, false);
}
function previewMove(e) {
var hb = document.getElementById(preview);
if(hb.parentElement) hb.parentElement.style.display="";
else hb.parentNode.style.display="";
var evt = e ? e : window.event;
var posx=0;
var posy=0;
if (evt.pageX || evt.pageY) { // pageX/Y 표준 검사
posx = evt.pageX +8;
posy = evt.pageY +16;
} else if (evt.clientX || evt.clientY) { //clientX/Y 표준 검사 Opera
posx = evt.clientX +10;
posy = evt.clientY +20;
if (window.event) { // IE 여부 검사
posx += document.body.scrollLeft;
posy += document.body.scrollTop;
}
}
hb.style.left = posx + "px";
hb.style.top = posy + "px";
}
function previewHide() {
var hb = document.getElementById(preview);
if(hb.parentElement) hb.parentElement.style.display="none";
else hb.parentNode.style.display="none";
detachEvent_(gobj,"mousemove", previewMove, false);
}
[/code]
// test.html
[code]
<script src="tooltip.js" type="text/javascript"></script>
<style type="text/css">
div.mouseView { width:150px; position:absolute; border:2px solid #ccc; font-size:12px; background-color:#fafafa; }
</style>
<a href="#" onmouseover="previewShow(event,this,'t_tip1');">마우스 오버</a>
<span style="display:none;">
<div id="t_tip1" class="mouseView">툴팁내용(HTML가능)</div>
</span>
[/code]
댓글 6개
글씨가 넘 작아영 ㅠ
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 5830 | 13년 전 | 1190 | ||
| 5829 | 13년 전 | 5057 | ||
| 5828 | 13년 전 | 6441 | ||
| 5827 | 13년 전 | 1216 | ||
| 5826 |
|
13년 전 | 543 | |
| 5825 | 13년 전 | 901 | ||
| 5824 |
|
13년 전 | 1886 | |
| 5823 | 13년 전 | 5624 | ||
| 5822 |
jfascas
|
13년 전 | 1058 | |
| 5821 | 13년 전 | 1706 | ||
| 5820 | 13년 전 | 1320 | ||
| 5819 |
itlang
|
13년 전 | 513 | |
| 5818 | 13년 전 | 1312 | ||
| 5817 | 13년 전 | 785 | ||
| 5816 | 13년 전 | 626 | ||
| 5815 | 13년 전 | 6138 | ||
| 5814 | 13년 전 | 864 | ||
| 5813 |
악마의유혹
|
13년 전 | 463 | |
| 5812 | 13년 전 | 2812 | ||
| 5811 | 13년 전 | 1186 | ||
| 5810 | 13년 전 | 3536 | ||
| 5809 | 13년 전 | 1359 | ||
| 5808 | 13년 전 | 1068 | ||
| 5807 | 13년 전 | 578 | ||
| 5806 | 13년 전 | 562 | ||
| 5805 |
angrysol
|
13년 전 | 823 | |
| 5804 | 13년 전 | 1013 | ||
| 5803 | 13년 전 | 1744 | ||
| 5802 |
angrysol
|
13년 전 | 1069 | |
| 5801 |
후라보노보노
|
13년 전 | 2157 | |
| 5800 | 13년 전 | 1115 | ||
| 5799 |
|
13년 전 | 4199 | |
| 5798 |
|
13년 전 | 3370 | |
| 5797 |
|
13년 전 | 4940 | |
| 5796 | 13년 전 | 7552 | ||
| 5795 | 13년 전 | 2778 | ||
| 5794 | 13년 전 | 2233 | ||
| 5793 |
|
13년 전 | 665 | |
| 5792 | 13년 전 | 2976 | ||
| 5791 | 13년 전 | 848 | ||
| 5790 | 13년 전 | 4331 | ||
| 5789 |
|
13년 전 | 2481 | |
| 5788 |
|
13년 전 | 1855 | |
| 5787 |
오지랖선생
|
13년 전 | 1623 | |
| 5786 | 13년 전 | 5930 | ||
| 5785 | 13년 전 | 1769 | ||
| 5784 |
|
13년 전 | 1455 | |
| 5783 | 13년 전 | 1315 | ||
| 5782 |
|
13년 전 | 2826 | |
| 5781 | 13년 전 | 2858 | ||
| 5780 | 13년 전 | 1162 | ||
| 5779 |
|
13년 전 | 1358 | |
| 5778 |
오리진소프트
|
13년 전 | 4609 | |
| 5777 | 13년 전 | 686 | ||
| 5776 | 13년 전 | 1166 | ||
| 5775 | 13년 전 | 1474 | ||
| 5774 | 13년 전 | 1897 | ||
| 5773 |
|
13년 전 | 1925 | |
| 5772 | 13년 전 | 1691 | ||
| 5771 | 13년 전 | 4798 | ||
| 5770 | 13년 전 | 1133 | ||
| 5769 | 13년 전 | 6109 | ||
| 5768 |
|
13년 전 | 1581 | |
| 5767 | 13년 전 | 1688 | ||
| 5766 |
프로프리랜서
|
13년 전 | 1390 | |
| 5765 |
|
13년 전 | 1042 | |
| 5764 | 13년 전 | 1761 | ||
| 5763 |
|
13년 전 | 787 | |
| 5762 |
|
13년 전 | 2291 | |
| 5761 | 13년 전 | 624 | ||
| 5760 | 13년 전 | 625 | ||
| 5759 | 13년 전 | 3272 | ||
| 5758 | 13년 전 | 1087 | ||
| 5757 |
|
13년 전 | 744 | |
| 5756 | 13년 전 | 570 | ||
| 5755 | 13년 전 | 1066 | ||
| 5754 |
|
13년 전 | 2232 | |
| 5753 | 13년 전 | 679 | ||
| 5752 | 13년 전 | 1551 | ||
| 5751 | 13년 전 | 772 | ||
| 5750 | 13년 전 | 759 | ||
| 5749 | 13년 전 | 2580 | ||
| 5748 | 13년 전 | 1014 | ||
| 5747 | 13년 전 | 1223 | ||
| 5746 |
|
13년 전 | 657 | |
| 5745 | 13년 전 | 1662 | ||
| 5744 | 13년 전 | 692 | ||
| 5743 | 13년 전 | 837 | ||
| 5742 |
프로프리랜서
|
13년 전 | 583 | |
| 5741 | 13년 전 | 645 | ||
| 5740 | 13년 전 | 638 | ||
| 5739 | 13년 전 | 732 | ||
| 5738 | 13년 전 | 1927 | ||
| 5737 | 13년 전 | 995 | ||
| 5736 | 13년 전 | 1097 | ||
| 5735 | 13년 전 | 1997 | ||
| 5734 | 13년 전 | 1146 | ||
| 5733 | 13년 전 | 2791 | ||
| 5732 |
JOYCOM
|
13년 전 | 649 | |
| 5731 | 13년 전 | 3310 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기