<HEAD> ű׾ȿ¡ ¾Æ·¡ÀÇ ³»¿ëÀ» »ðÀÔÇϼ¼¿ä
JSÆÄÀÏÀ» ¸µÅ©½ÃÄÑÁÝ´Ï´Ù. <script language="javascript" src="color_functions.js" type="text/javascript"></script>
<style type="text/css">
#dhtmlgoodies_menu{ /* Menu object */ margin:0px; padding:0px; width:150px; /* Width of menu */ } #dhtmlgoodies_menu li{ margin-top:2px; /* Space between each menu item */
/* Don't change these four values */ list-style-type:none; clear:both; display:block; overflow:auto; }
#dhtmlgoodies_menu li a{ /* Text rules for the menu items */ color:#000; /* Black text color */ text-decoration:none; /* No underline */ font-family: Trebuchet MS, Lucida Sans Unicode, Arial, sans-serif; /* Font to use */ letter-spacing:1px; /* Extra space between each letter of the menu items */ font-size:0.7em; /* Fixed font size */ font-weight:bold; /* Bold font */ float:left; background-color:#F1F1F1; padding-left:3px; line-height:25px; /* Height of menu links */
} #dhtmlgoodies_menu li div{ float:left;
} </style>
<script type="text/javascript" src="color_functions.js"></script> <SCRIPT type="text/javascript"> /************************************************************************************************************ (C) www.dhtmlgoodies.com, October 2005
This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.
Terms of use: You are free to use this script as long as the copyright message is kept intact. However, you may not redistribute, sell or repost it without our permission.
Thank you!
www.dhtmlgoodies.com Alf Magne Kalleland
************************************************************************************************************/
/*
HOW TO DEAL WITH THE ARRAYS BELOW
You can have more than one color in your menu. You define which color a menu item belongs to by specifying a class for the <a> tag Example: <a class="menuGroup1"> which means that this element uses color number 2 (0 = first color). btw: You don't have to specify <a class="menugroup0"> if a menu item uses the first color. This color is the default choice if nothing else is defined.
*/
var initActiveMenuItem = -1; // If one of the menu items should be initially highlighted.(-1 = none, 0 = first item, 1 = second...) var activeSmallSquareColor = ['#D60808','#08D608']; // Color of small square at the left of each menu item - only one item in the array if you only have one color var colorSquareWidth = 2; // Width of small square; var marginSquare = 1;
var bgColorLinks = ["#E2EBED",'#EDE3E3']; // Background color for menu links - one element for each menu color var degreesToDarkenOrLighten = [15,15]; // How many percent point to darken/lighten,or change saturation of the color above on mouse over (10-15 percent point is usually enough). var changeBrightnessOrSaturation = ['saturation','saturation']; // Possible values: "saturation" and "brightness" - which one to adjust on mouseover
var textColorMenuItems = ['#000000','#000000']; /* Text color of links - one array item for each group of colors */ /* You can use the color schemer at www.dhtmlgoodies.com to find your colors
We use the HSB color system here, The HSB color system is based on three values
* Hue = Which color, i.e. degree on color wheel * Saturation = Intensity of the color to use * Brightness = Brightness of the color
When you use the color schemer at the site, pick a color from the palett or type it into the RGB text box(format #RRGGBB, example #E2EBED) Then adjust the value of brightness by typing in a new value in that text box(label "B").
*/
var darkenOnMouseOver = [false,false]; // Darken or Lighten on mouse over (true = darken, false = lighten) // One element for each menu color. // (Or more or less saturation if that is chosen in changeBrightnessOrSaturation
var timeStepOpacitySquare = 15; // Microseconds between each opacity change -> Lower value = faster var opacityChangePerStep = 10; // Steps - change in opacity - on mouse out = Higher = faster var timeStepSwitchBgColor = 10; // Microseconds between each text background change(darken or lighten) -> Lower value = faster var bgColorStep = [2,2]; // lower value = slower bg color fading. This value should usually be about 10 percent of the degrees to lighten/darken /************************************************************************************************************ /* Don't change anything below here ************************************************************************************************************/ var activeMenuItem = false; var activeMenuLink = false; var menuObj; var brightnessLink = new Array(); var saturationLink = new Array(); var brightnessLinkMin = new Array(); var saturationLinkMin = new Array(); var darkenBrightnessCounter = new Array(); // Darken or lighten - this variable is set manually var startHue = new Array(); var startSat = new Array(); var startBri = new Array();
function showMenuItem() { var hsb = toHSV(this.getAttribute('bgColorItem')); currentIndex = this.className.replace(/[^\d]/g,''); if(changeBrightnessOrSaturation[currentIndex]=='saturation'){ if(darkenOnMouseOver[currentIndex]){ var saturation = hsb[1] - (degreesToDarkenOrLighten[currentIndex]/100); }else{ var saturation = hsb[1] + (degreesToDarkenOrLighten[currentIndex]/100); } if(saturation<0)saturation=0; if(saturation>1)saturation=1; var rgb = toRgb(hsb[0],saturation,hsb[2]); }else{ if(darkenOnMouseOver[currentIndex]){ var brightness = hsb[2] - (degreesToDarkenOrLighten[currentIndex]/100); }else{ var brightness = hsb[2] + (degreesToDarkenOrLighten[currentIndex]/100); } if(brightness<0)brightness=0; if(brightness>1)brightness=1; var rgb = toRgb(hsb[0],hsb[1],brightness); } this.style.backgroundColor = rgb; this.currentBgColorItem = rgb; this.setAttribute('currentBgColorItem',rgb);
var obj = this.parentNode.getElementsByTagName('DIV')[0]; obj.setAttribute('okToHide','0'); obj.okToHide = 0; this.setAttribute('okToHide','0'); this.okToHide = 0; obj.style.visibility = 'visible';
obj.style.opacity = 0.98; obj.style.filter = 'alpha(opacity=98)';
}
function hideMenuItem() { if(this.getAttribute('initActive')=='1')return; if(this.initActive=='1')return; var obj = this.parentNode.getElementsByTagName('DIV')[0]; obj.setAttribute('okToHide','1'); obj.okToHide = 1; this.setAttribute('okToHide','1'); this.okToHide = 1; obj.style.visibility = 'visible'; if(navigator.userAgent.indexOf('Opera')>=0){ obj.style.visibility = 'hidden'; }else{ progressHideSquare(obj.id,(opacityChangePerStep*-1)); } progressShowHideBgColor(this.id); }
function progressShowHideBgColor(inputId) {
var obj = document.getElementById(inputId); var currentBgColor = obj.getAttribute('currentBgColorItem'); if(obj.getAttribute('okToHide')=='0')return; if(!currentBgColor)currentBgColor = obj.currentBgColorItem; if(currentBgColor){ var index = obj.className.replace(/[^\d]/g,''); var hsb = toHSV(currentBgColor); if(changeBrightnessOrSaturation[index]=='saturation'){ var saturation = hsb[1]; saturation+=darkenBrightnessCounter[index]; if((saturation>saturationLink[index] && darkenOnMouseOver[index]) || (saturation<saturationLink[index] && !darkenOnMouseOver[index]))saturation = saturationLink[index]; var rgb = toRgb(startHue[index],saturation,startBri[index]);
obj.style.backgroundColor = rgb; obj.currentBgColorItem = rgb; obj.setAttribute('currentBgColorItem',rgb); if((hsb[1]<saturation && darkenOnMouseOver[index]) || (hsb[1]>saturation && !darkenOnMouseOver[index])){ setTimeout('progressShowHideBgColor(\'' + inputId + '\')',timeStepSwitchBgColor); }else{ var index = obj.className.replace(/[^\d]/g,''); obj.style.backgroundColor = bgColorLinks[index]; }
}else{ var brightness = hsb[2]; brightness+=darkenBrightnessCounter[index]; if((brightness>brightnessLink[index] && darkenOnMouseOver[index]) || (brightness<brightnessLink[index] && !darkenOnMouseOver[index]))brightness = brightnessLink[index]; var rgb = toRgb(startHue[index],startSat[index],brightness); obj.style.backgroundColor = rgb; obj.currentBgColorItem = rgb; obj.setAttribute('currentBgColorItem',rgb); if((hsb[2]<brightness && darkenOnMouseOver[index]) || (hsb[2]>brightness && !darkenOnMouseOver[index])){ setTimeout('progressShowHideBgColor(\'' + inputId + '\')',timeStepSwitchBgColor); }else{ var index = obj.className.replace(/[^\d]/g,''); obj.style.backgroundColor = bgColorLinks[index]; }
}
} }
function progressHideSquare(inputId,step) {
var obj = document.getElementById(inputId);
if(obj.getAttribute('okToHide')=='0' && step<0)return;
if(document.all){ var currentOpacity = obj.style.filter.replace(/[^\d]/g,'')/1;
if(currentOpacity>=99){
} else if(currentOpacity==11){ obj.style.visibility='hidden'; }else{ currentOpacity = currentOpacity + step; if(currentOpacity<1)currentOpacity=1; if(currentOpacity>99)currentOpacity=9; obj.style.filter = 'alpha(opacity=' + currentOpacity + ')'; setTimeout('progressHideSquare("' + inputId + '",' + (step) + ')',timeStepOpacitySquare); } }else{ step = step / 100; var currentOpacity = obj.style.opacity/1;
if(currentOpacity>=0.99){
} else if(currentOpacity==0.01){ obj.style.visibility='hidden'; }else{ currentOpacity = currentOpacity + step;
if(currentOpacity<0.01)currentOpacity=0.01; if(currentOpacity>0.99)currentOpacity=0.99; obj.style.opacity = currentOpacity; setTimeout('progressHideSquare("' + inputId + '",' + (step*100) + ')',timeStepOpacitySquare); } } }
function dhtmlgoodies_initMenu() { menuObj = document.getElementById('dhtmlgoodies_menu'); for(var no=0;no<bgColorLinks.length;no++){ var hsbArray = toHSV(bgColorLinks[no]); brightnessLink.push(hsbArray[2]); saturationLink.push(hsbArray[1]); startHue.push(hsbArray[0]); startSat.push(hsbArray[1]); startBri.push(hsbArray[2]); if(darkenOnMouseOver[no]){ brightnessLinkMin.push(Math.max(hsbArray[2] - (degreesToDarkenOrLighten[no]/100),0)); saturationLinkMin.push(Math.max(hsbArray[1] - (degreesToDarkenOrLighten[no]/100),0)); darkenBrightnessCounter.push(bgColorStep[no]/100); }else{ brightnessLinkMin.push(Math.min(hsbArray[2] + (degreesToDarkenOrLighten[no]/100),1)); saturationLinkMin.push(Math.min(hsbArray[1] + (degreesToDarkenOrLighten[no]/100),1)); darkenBrightnessCounter.push((bgColorStep[no]/100)*-1); } } var listItems = menuObj.getElementsByTagName('LI'); for(var no=0;no<listItems.length;no++){
var menuLink = listItems[no].getElementsByTagName('A')[0]; if(menuLink){ if(!menuLink.className)menuLink.className = 'menuGroup0'; var groupIndex = menuLink.className.replace(/[^\d]/g,''); listItems[no].id = 'listItem' + no; var height = menuLink.offsetHeight; menuLink.style.display='block'; menuLink.style.height=height + 'px'; menuLink.style.lineHeight=height + 'px'; menuLink.onmouseover = showMenuItem; menuLink.onmouseout = hideMenuItem; menuLink.style.backgroundColor = bgColorLinks[groupIndex]; menuLink.setAttribute('bgColorItem',bgColorLinks[groupIndex]); menuLink.bgColorItem = bgColorLinks[groupIndex]; menuLink.setAttribute('currentBgColorItem',bgColorLinks[groupIndex]); menuLink.currentBgColorItem = bgColorLinks[groupIndex]; menuLink.id = 'listLink' + no; menuLink.style.color = textColorMenuItems[groupIndex];
var colorDiv = document.createElement('DIV'); colorDiv.innerHTML = '<span><\/span>'; colorDiv.style.height = height + 'px'; colorDiv.style.width = colorSquareWidth + 'px'; colorDiv.style.backgroundColor = activeSmallSquareColor[groupIndex]; colorDiv.style.marginRight = marginSquare + 'px'; colorDiv.style.visibility = 'hidden' colorDiv.id = 'colorSquare' + no; colorDiv.style.opacity = 0.99; // Not possible to use 1 because of JS flickering in Firefox colorDiv.style.filter = 'alpha(opacity=100)';
if(initActiveMenuItem==no){ colorDiv.style.visibility = 'visible'; if(changeBrightnessOrSaturation[groupIndex]=='saturation'){ menuLink.style.backgroundColor = toRgb(startHue[groupIndex],saturationLinkMin[groupIndex],startBri[groupIndex]); }else{ menuLink.style.backgroundColor = toRgb(startHue[groupIndex],startSat[groupIndex],brightnessLinkMin[groupIndex]); } menuLink.initActive = '1'; menuLink.setAttribute('initActive','1');
}
listItems[no].appendChild(colorDiv); listItems[no].appendChild(menuLink);
var clearDiv = document.createElement('DIV'); clearDiv.style.clear='both'; listItems[no].appendChild(clearDiv); clearDiv.innerHTML = '<span></span>';
var currentWidth = (listItems[no].offsetWidth - colorDiv.offsetWidth - marginSquare); menuLink.style.width = currentWidth + 'px'; while(listItems[no].offsetHeight>=(menuLink.offsetHeight*2)){ currentWidth--; menuLink.style.width = currentWidth + 'px';
} listItems[no].style.overflow='hidden'; } } } window.onload = dhtmlgoodies_initMenu;
</script>
<BODY> ű׾ȿ¡ ¾Æ·¡ÀÇ ³»¿ëÀ» »ðÀÔÇϼ¼¿ä.
<ul id="dhtmlgoodies_menu"> <li><a href="http://www.dhtmlgoodies.com">Menu scripts</a></li> <li><a href="http://www.dhtmlgoodies.com">Form widgets</a></li> <li><a href="http://www.dhtmlgoodies.com">Table widgets</a></li> <li><a href="http://www.dhtmlgoodies.com">Calendar scripts</a></li> <li><a href="http://www.dhtmlgoodies.com">Javascript games</a></li> <li><a class="menuGroup1" href="http://www.dhtmlgoodies.com">About</a></li> <li><a class="menuGroup1" href="http://www.dhtmlgoodies.com">Contact</a></li> <li><a class="menuGroup1" href="http://www.dhtmlgoodies.com">Donate</a></li> <li><a class="menuGroup1" href="http://www.dhtmlgoodies.com">Terms of use</a></li>
</ul>
|