Saturday, August 15, 2009

Sliding Side Menu တစ္ခုျပဳလုပ္နည္း

ကြၽန္ေတာ္ Blog မွာ လုပ္ထားတဲ႔ Sliding Side Menu ကုိ လုပ္ခ်င္တယ္လုိ႕ သူငယ္ခ်င္းက ဆုိလာတဲ႕အတြက္ ကြၽန္ေတာ္တင္ေပးလုိက္တာပါ။ လုပ္ရတာကလဲ လြယ္ကူပါတယ္။ ကြၽန္ေတာ္ စကားေၾကာမရွည္ေတာ႕ဘူးဗ်ာ။ ေအာက္မွာ လုပ္နည္းသာၾကည္႕လုိက္ေတာ႕ေနာ္

လုပ္နည္း

Step#1
1. ပထမအဆင္႕အေနနဲ႕ ေအာက္က code ေတြကုိ copy ယူျပီ notepad ထဲမွာ paste လုပ္ျပီ ssm.js လုိ႕ save ျပီ JavaScript တစ္ခုကုိ ျပဳလုပ္လုိက္ပါ။

//Static Slide Menu 6.5 © MaXimuS 2000-2001, All Rights Reserved.
//Site: http://www.absolutegb.com/maximus
//Script featured on Dynamic Drive (http://www.dynamicdrive.com)

//March 20th, 09'- Updated for IE8 compatibility

NS6 = (document.getElementById&&!document.all)
IE = (document.all)
NS = (navigator.appName=="Netscape" && navigator.appVersion.charAt(0)=="4")

tempBar='';barBuilt=0;ssmItems=new Array();

function truebody(){
return (document.compatMode!="BackCompat")? document.documentElement : document.body
}

moving=setTimeout('null',1)
function moveOut() {
if ((NS6||NS)&&parseInt(ssm.left)<0 || IE && ssm.pixelLeft<0) {
clearTimeout(moving);moving = setTimeout('moveOut()', slideSpeed);slideMenu(10)}
else {clearTimeout(moving);moving=setTimeout('null',1)}};
function moveBack() {clearTimeout(moving);moving = setTimeout('moveBack1()', waitTime)}
function moveBack1() {
if ((NS6||NS) && parseInt(ssm.left)>(-menuWidth) || IE && ssm.pixelLeft>(-menuWidth)) {
clearTimeout(moving);moving = setTimeout('moveBack1()', slideSpeed);slideMenu(-10)}
else {clearTimeout(moving);moving=setTimeout('null',1)}}
function slideMenu(num){
if (IE) {ssm.pixelLeft += num;}
if (NS6) {ssm.left = parseInt(ssm.left)+num+"px";}
if (NS) {ssm.left = parseInt(ssm.left)+num; bssm.clip.right+=num;bssm2.clip.right+=num;}}

function makeStatic() {
if (NS||NS6) {winY = window.pageYOffset;}
if (IE) {winY = truebody().scrollTop;}
if (NS6||IE||NS) {
if (winY!=lastY&&winY>YOffset-staticYOffset) {
smooth = .2 * (winY - lastY - YOffset + staticYOffset);}
else if (YOffset-staticYOffset+lastY>YOffset-staticYOffset) {
smooth = .2 * (winY - lastY - (YOffset-(YOffset-winY)));}
else {smooth=0}
if(smooth > 0) smooth = Math.ceil(smooth);
else smooth = Math.floor(smooth);
if (IE) bssm.pixelTop+=smooth;
if (NS6) bssm.top=parseInt(bssm.top)+smooth+"px"
if (NS) bssm.top=parseInt(bssm.top)+smooth
lastY = lastY+smooth;
setTimeout('makeStatic()', 1)}}

function buildBar() {
if(barText.indexOf('<IMG')>-1) {tempBar=barText}
else{for (b=0;b<barText.length;b++) {tempBar+=barText.charAt(b)+"<BR>"}}
document.write('<td align="center" rowspan="100" width="'+barWidth+'" bgcolor="'+barBGColor+'" valign="'+barVAlign+'"><p align="center"><font face="'+barFontFamily+'" Size="'+barFontSize+'" COLOR="'+barFontColor+'"><B>'+tempBar+'</B></font></p></TD>')}

function initSlide() {
if (NS6){ssm=document.getElementById("thessm").style;bssm=document.getElementById("basessm").style;
bssm.clip="rect(0 "+document.getElementById("thessm").offsetWidth+" "+document.getElementById("thessm").offsetHeight+" 0)";ssm.visibility="visible";}
else if (IE) {ssm=document.all("thessm").style;bssm=document.all("basessm").style
bssm.visibility = "visible";}
else if (NS) {bssm=document.layers["basessm1"];
bssm2=bssm.document.layers["basessm2"];ssm=bssm2.document.layers["thessm"];
bssm2.clip.left=0;ssm.visibility = "show";}
if (menuIsStatic=="yes") makeStatic();}

function buildMenu() {
if (IE||NS6) {document.write('<DIV ID="basessm" style="visibility:hidden;Position : Absolute ;Left : '+XOffset+'px ;Top : '+YOffset+'px ;Z-Index : 20;width:'+(menuWidth+barWidth+10)+'px"><DIV ID="thessm" style="Position : Absolute ;Left : '+(-menuWidth)+'px ;Top : 0 ;Z-Index : 20;" onmouseover="moveOut()" onmouseout="moveBack()">')}
if (NS) {document.write('<LAYER name="basessm1" top="'+YOffset+'" LEFT='+XOffset+' visibility="show"><ILAYER name="basessm2"><LAYER visibility="hide" name="thessm" bgcolor="'+menuBGColor+'" left="'+(-menuWidth)+'" onmouseover="moveOut()" onmouseout="moveBack()">')}
if (NS6){document.write('<table border="0" cellpadding="0" cellspacing="0" width="'+(menuWidth+barWidth+2)+'px" bgcolor="'+menuBGColor+'"><TR><TD>')}
document.write('<table border="0" cellpadding="0" cellspacing="1" width="'+(menuWidth+barWidth+2)+'px" bgcolor="'+menuBGColor+'">');
for(i=0;i<ssmItems.length;i++) {
if(!ssmItems[i][3]){ssmItems[i][3]=menuCols;ssmItems[i][5]=menuWidth-1}
else if(ssmItems[i][3]!=menuCols)ssmItems[i][5]=Math.round(menuWidth*(ssmItems[i][3]/menuCols)-1);
if(ssmItems[i-1]&&ssmItems[i-1][4]!="no"){document.write('<TR>')}
if(!ssmItems[i][1]){
document.write('<td bgcolor="'+hdrBGColor+'" HEIGHT="'+hdrHeight+'px" ALIGN="'+hdrAlign+'" VALIGN="'+hdrVAlign+'" WIDTH="'+ssmItems[i][5]+'" COLSPAN="'+ssmItems[i][3]+'">&nbsp;<font face="'+hdrFontFamily+'" Size="'+hdrFontSize+'" COLOR="'+hdrFontColor+'"><b>'+ssmItems[i][0]+'</b></font></td>')}
else {if(!ssmItems[i][2])ssmItems[i][2]=linkTarget;
document.write('<TD BGCOLOR="'+linkBGColor+'" onmouseover="bgColor=\''+linkOverBGColor+'\'" onmouseout="bgColor=\''+linkBGColor+'\'" WIDTH="'+ssmItems[i][5]+'px" COLSPAN="'+ssmItems[i][3]+'"><ILAYER><LAYER onmouseover="bgColor=\''+linkOverBGColor+'\'" onmouseout="bgColor=\''+linkBGColor+'\'" WIDTH="100%" ALIGN="'+linkAlign+'"><DIV ALIGN="'+linkAlign+'"><FONT face="'+linkFontFamily+'" Size="'+linkFontSize+'">&nbsp;<A HREF="'+ssmItems[i][1]+'" target="'+ssmItems[i][2]+'" CLASS="ssmItems">'+ssmItems[i][0]+'</DIV></LAYER></ILAYER></TD>')}
if(ssmItems[i][4]!="no"&&barBuilt==0){buildBar();barBuilt=1}
if(ssmItems[i][4]!="no"){document.write('</TR>')}}
document.write('</table>')
if (NS6){document.write('</TD></TR></TABLE>')}
if (IE||NS6) {document.write('</DIV></DIV>')}
if (NS) {document.write('</LAYER></ILAYER></LAYER>')}
theleft=-menuWidth;lastY=0;setTimeout('initSlide();', 1)}


2. ဒုတိယအဆင္႕အေနနဲ႕ ကြၽန္ေတာ္တုိ႕ ေအာက္မွာေပးထားတဲ႕ code ေတြကုိ copy ကူးျပီ notepad ထဲမွာ ထည္႕လုိက္ပါ။ ျပီရင္ မ save ခင္မွာ ကြၽန္ေတာ္တုိ႕အနီေရာင္နဲ႕ ျပထားတဲ႕ေနရာေတြမွာ color ေတြ မိမိတုိ႕စိတ္ၾကိဳက္ေျပာင္းႏုိင္ပါတယ္။ ျပီရင္ မိမိဆုိဒ္မွာ Menu လုပ္ခ်င္တဲ႕ link ေတြနဲ႕ ေျပာင္းလုိက္ျပီ ssmltems.js လုိ႕ save လုိက္ပါ။


<!--

/*
Configure menu styles below
NOTE: To edit the link colors, go to the STYLE tags and edit the ssm2Items colors
*/
YOffset=150; // no quotes!!
XOffset=0;
staticYOffset=30; // no quotes!!
slideSpeed=20 // no quotes!!
waitTime=100; // no quotes!! this sets the time the menu stays out for after the mouse goes off it.
menuBGColor="black";
menuIsStatic="yes"; //this sets whether menu should stay static on the screen
menuWidth=150; // Must be a multiple of 10! no quotes!!
menuCols=2;
hdrFontFamily="verdana";
hdrFontSize="2";
hdrFontColor="white";
hdrBGColor="#170088";
hdrAlign="left";
hdrVAlign="center";
hdrHeight="15";
linkFontFamily="Verdana";
linkFontSize="2";
linkBGColor="white";
linkOverBGColor="#FFFF99";
linkTarget="_top";
linkAlign="Left";
barBGColor="#444444";
barFontFamily="Verdana";
barFontSize="2";
barFontColor="white";
barVAlign="center";
barWidth=20; // no quotes!!
barText="SIDE MENU"; // <IMG> tag supported. Put exact html for an image to show.

///////////////////////////

// ssmItems[...]=[name, link, target, colspan, endrow?] - leave 'link' and 'target' blank to make a header
ssmItems[0]=["Menu"] //create header
ssmItems[1]=["HOME", "http://www.knowledgewar07.co.cc/", ""]
ssmItems[2]=["Gmail & Gtalk", "http://knowledgewar05.blogspot.com/",""]
ssmItems[3]=["HTML", "http://knowledgewar02.blogspot.com/", ""]
ssmItems[4]=["POREM", "http://knowledgewar04.blogspot.com/?zx=dd26b42a6890f1ec/", "_new"]
ssmItems[5]=["SONG", "http://knowledgewar03.blogspot.com/", ""]
ssmItems[6]=["COMPUTER", "http://www.knowledgewar07.co.cc/2009/08/windows-xp-cd-keys-windows-xp-cd.html", ""]

ssmItems[7]=["E-BOOKS", "http://www.knowledgewar07.co.cc/2009/08/e-books.html", "", 1, "no"] //create two column row
ssmItems[8]=["BLOG", "http://www.knowledgewar07.co.cc/2009/08/blog-read-more-blog-search-engine-blog.html", "",1]

ssmItems[9]=["External Links", "", ""] //create header
ssmItems[10]=["Computing Training", "http://www.vtc.com/", ""]
ssmItems[11]=["Softeare", "http://www.neuber.com/taskmanager/", ""]
ssmItems[12]=["Window", "http://commandwindows.com/taskkill.htm", ""]

buildMenu();

//-->

Step#2

1. ျပီရင္ http://www.hotlinkfiles.com/ ဒီဆုိဒ္မွာ hosting တင္လုိက္ပါ။

Step#3

1. ရလာတဲ႕ link ေတြကုိ အနီေရာင္နဲ႕ ျပထားတဲ႕ script src ေနရာေတြမွာ သူေနရာနဲ႕သူ script ေတြကုိ အစားထုိးလုိက္ပါ။

<!--SIDE-MENU-STARTS-->
<STYLE>
<!--
A.ssmItems:link {color:black;text-decoration:none;}
A.ssmItems:hover {color:black;text-decoration:none;}
A.ssmItems:active {color:black;text-decoration:none;}
A.ssmItems:visited {color:black;text-decoration:none;}
//-->
</STYLE>

<SCRIPT SRC='http://www.hotlinkfiles.com/files/2742759_fmslq/ssm.js]ssm.js ' language='JavaScript1.2'>

//Dynamic-FX slide in menu v6.5 (By maXimus, maximus@nsimail.com)
//Site: http://maximus.ravecore.com/
//For full source, and 100&#39;s more DHTML scripts, visit http://www.dynamicdrive.com

</SCRIPT>

<SCRIPT SRC='http://www.hotlinkfiles.com/files/2742760_kgr2x/ssmItems.js]ssmItems.js' language='JavaScript1.2'/>
<!--SIDE-MENU-STOPS-->

Step#4

1. ျပီရင္ မိမိ Blog မွ layout မွ Edit html ထဲမွ ဆုိတဲ႕ အေပၚမွာထည္႕ေပးလုိက္ပါ။
2. ျပီရင္ templates ကုိ save လုိက္ပါ။ျပီပါျပီ။




0 comments:

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Top WordPress Themes