View Full Version : help me anyone
LukeyboyNunn 01-25-2003, 09:29 AM if you got to this site http://www.cass.net/~anarchy/ then you will see in the top right hand corner that there is a menu option. when you hover your mouse over menu, a list of options comes down for you to choose from. if you no how to do this then can u please post a script that is easy to understand so that i can edit it to suit me? if you no a site where it tells you how to do this ten could you please tell me about it coz ive tried to find one and have failed.
PLEASE HELP!
Please do NOT post your question more than once on this forum!
Sheila 01-25-2003, 10:29 AM www.dynamicdrive.com search under Menus and Navigation
LukeyboyNunn 01-25-2003, 06:51 PM im using this script in a frame but when i click on one of the sub headings, it opens the page in the left hand frame instead of the right. can u help me?
<head>
<title>
</title>
<Script name=SMB_ExtJS Language="Javascript" src="/images/fw_menu.js"></script>
<script language="javascript" type="text/javascript">
<!--
//Swipe Menu : 1.0
is = {};
is.agent = navigator.userAgent.toLowerCase();
is.ie4 = (is.agent.indexOf("msie 4") != -1);
is.ie5 = (is.agent.indexOf("msie 5") != -1);
is.ie55 = (is.agent.indexOf("msie 5.5") != -1);
is.ie6 = (is.agent.indexOf("msie 6") != -1);
is.ns4 = (is.agent.indexOf("4") != -1 && document.layers);
is.ns6 = (is.agent.indexOf("netscape6") != -1 && is.agent.indexOf("6.1") == -1);
is.ns6x = (is.agent.indexOf("netscape6") != -1);
is.ie = (is.ie4 || is.ie5 || is.ie55 || is.ie6);
is.moz = (is.agent.indexOf("gecko")!= -1);
is.mac = (is.agent.indexOf("mac") != -1);
is.win = (is.agent.indexOf("win") != -1);
is.iestrict = (is.win && is.ie6 && document.compatMode == "CSS1Compat");
is.macstrict = (is.ie5 && is.mac && document.doctype && document.doctype.name.indexOf(".dtd") != -1);
is.strict = (is.iestrict || is.macstrict);
is.iemac =(is.mac && is.ie5);
is.dom = (is.ie5 || is.ie55 || is.ie6 || is.ns6x || is.moz);
var css_px = (is.ns4) ?"" : "px";
function menuObj(obj, par, nst, p) {
page = new Object();
page.width = (is.ns6 || is.ns6x || is.ns4 || is.moz) ? innerWidth : document.body.clientWidth;
page.height = (is.ns6 || is.ns6x || is.ns4 || is.moz) ? innerHeight : document.body.clientHeight;
if (!is.ns4) {
this.lyr = (is.dom) ? document.getElementById(obj) : document.all[obj];
} else {
this.lyr = (!nst) ? document.layers[obj] : document.layers[nst].document.layers[obj];
}
this.sty = (!is.ns4) ? this.lyr.style : this.lyr;
this.parent = par;
this.obj = obj + "SwipeLayer";
eval(this.obj + "= this");
}
menuObj.prototype.timer = null;
menuObj.prototype.wipe = 0;
if (is.iemac){
menuObj.prototype.offX = Function('oX = this.lyr.offsetLeft -6+-(mAtt.border)+0; return oX');
menuObj.prototype.offY = Function('oY = this.lyr.offsetTop-2+-(mAtt.border)+0+(0);return oY;');
} else {
menuObj.prototype.offX = Function('oX = (is.ie || is.ns6x || is.moz) ? this.lyr.offsetLeft : parseInt(this.sty.left);return oX');
menuObj.prototype.offY = Function('oY = (is.ie || is.ns6x || is.moz) ? this.lyr.offsetTop : parseInt(this.sty.top);return oY;');
}
menuObj.prototype.offW = Function('oW = (!is.ns4) ? this.lyr.offsetWidth : this.lyr.clip.width; return oW;')
menuObj.prototype.offH = Function('oH = (!is.ns4) ? this.lyr.offsetHeight : this.lyr.clip.height; return oH;')
menuObj.prototype.maxWipe = function() {
if(is.dom) return this.offH()+10;
if(is.ns4) return (sAtt.height*this.lyr.document.layers.length)+10;
}
var pd = "padding:0px 6px 0px 6px;"
wipeMenu.prototype.addMain = function(name, hasSub, txt, url) {
menuName = this.name, wipePos = this.pos, mAtt = this.mAtt, sAtt = this.sAtt;
var pf = Math.ceil(((mAtt.height-mAtt.font_size)/2)-2);
var styStr2 = "position:absolute; visibility:hidden; clip:rect(0px "+(sAtt.width+20)+"px 0px 0px); border:solid 1px "+sAtt.border_color+"; border-width:"+sAtt.border+"px 0px 0px 0px; cursor:default;"
if(this.main[name]) return;
if(is.ns4) {
var mainMenu = new Layer(mAtt.width);
var styStr = "text-decoration:none; font-weight:"+mAtt.font_weight+"; z-index:1; color:"+mAtt.fg_off+"; padding:"+((mAtt.height/2)-(mAtt.font_size/2)-1)+"px 0px 0px 0px; font-size:"+mAtt.font_size+"px; font-family:"+mAtt.font+";"
mainMenu.document.write('<div align="'+mAtt.align+'" style="'+pd+'"><a href="'+url+'" style="'+styStr+'">'+txt+'</a></div>');
mainMenu.document.close();
var mainMenu1 = new Layer(mAtt.width);
mainMenu.captureEvents(Event.MOUSEUP);
mainMenu.resizeTo(mAtt.width,mAtt.height);
if(mAtt.bg_off.indexOf("url") != -1) {
mainMenu.background.src = mAtt.bg_off.substring(4,mAtt.bg_off.length-1);
mainMenu.background.src = mAtt.bg_off.substring(4,mAtt.bg_off.length-1);
} else mainMenu.bgColor = mAtt.bg_off;
mainMenu.visibility = "visible";
}
if(is.dom) {
var mainMenu = document.createElement("DIV");
var wf = (is.ns6x || is.moz || is.strict) ? 12 : 0;
var pf2 = (mAtt.height%2 == 0) ? 1 : 0;
var styStr = "position:absolute; font-weight:"+mAtt.font_weight+"; z-index:1; width:"+(mAtt.width-wf)+"px; border:solid "+mAtt.border+"px "+mAtt.border_color+"; color:"+mAtt.fg_off+"; text-align:"+mAtt.align+"; font-size:"+mAtt.font_size+"px; font-family:"+mAtt.font+"; padding:"+pf+"px 6px "+(pf+pf2)+"px 6px; background:"+mAtt.bg_off+"; cursor:pointer; cursor:hand;"
mainMenu.innerHTML = txt;
mainMenu.id = name+menuName;
mainMenu.style.cssText = styStr;
mainMenu.setAttribute("style", styStr);
document.body.appendChild(mainMenu);
}
if(is.ie4) {
var mM = '<div id="'+name+menuName+'" style="'+styStr+'">'+txt+'</div>';
var wf = 12;
var styStr = "position:absolute; font-weight:"+mAtt.font_weight+"; z-index:1; width:"+(mAtt.width-wf)+"px; border:solid "+mAtt.border+"px "+mAtt.border_color+"; color:"+mAtt.fg_off+"; text-align:"+mAtt.align+"; font-size:"+mAtt.font_size+"px; font-family:"+mAtt.font+"; padding:"+pf+"px 6px "+(pf+pf2)+"px 6px; background:"+mAtt.bg_off+"; cursor:pointer; cursor:hand;"
document.body.insertAdjacentHTML("beforeEnd", mM);
var mainMenu = document.all[name+menuName];
}
mainMenu.onmouseover = Function('if('+hasSub+')'+menuName+'.subs["'+name+'"].show("'+wipePos+'"); over_out(this, "'+mAtt.bg_on+'", "'+mAtt.fg_on+'")');
mainMenu.onmouseout = Function('if('+hasSub+')'+menuName+'.subs["'+name+'"].hide();over_out(this, "'+mAtt.bg_off+'", "'+mAtt.fg_off+'")');
mainMenu.onmousedown = Function('location.href = "'+url+'"');
this.main[name] = new menuObj(mainMenu.id);
this.mainNum[this.mainNum.length] = this.main[name];
if(!hasSub) return;
if(is.ns4) {
var subC = new Layer(sAtt.width);
subC.resizeTo(sAtt.width,0);
subC.visibility = "hidden";
}
if(is.dom) {
var subC = document.createElement("DIV");
subC.id = name+menuName+"Sub";
var wf = (is.ns6x || is.moz) ? 4 : 0;
subC.style.cssText = styStr2;
subC.setAttribute("style", styStr2);
document.body.appendChild(subC);
}
if(is.ie4) {
var sC = '<div id="'+name+menuName+'Sub" style="'+styStr2+'"></div>';
document.body.insertAdjacentHTML("beforeEnd", sC);
var subC = document.all[name+menuName+"Sub"];
}
this.subs[name] = new menuObj(subC.id, this.main[name]);
subC.onmouseover = Function(menuName+'.subs["'+name+'"].show("'+wipePos+'");');
subC.onmouseout = Function(menuName+'.subs["'+name+'"].hide();');
}
wipeMenu.prototype.addSub = function(name, parent, txt, url) {
var pf2 = (mAtt.height%2 == 0) ? 1 : 0;
var pf = Math.ceil(((sAtt.height-sAtt.font_size)/2)-2);
if(is.ns4) {
var tempsub = new Layer(sAtt.width, this.subs[parent].lyr);
var styStr = "text-decoration:none; font-weight:"+mAtt.font_weight+"; color:"+sAtt.fg_off+"; padding:"+((sAtt.height/2)-(sAtt.font_size/2)-2)+"px 0px 0px 0px; font-size:"+sAtt.font_size+"px; font-family:"+sAtt.font+";"
tempsub.document.write('<div align="'+sAtt.align+'" style="'+pd+'"><a href="'+url+'" style="'+styStr+'">'+txt+'</a></div>');
tempsub.document.close();
tempsub.captureEvents(Event.MOUSEUP);
tempsub.resizeTo(sAtt.width,sAtt.height);
LukeyboyNunn 01-25-2003, 06:52 PM this is the rest
tempsub.moveTo(0,(sAtt.height*(this.subs[parent].lyr.document.layers.length-1)));
if(sAtt.bg_off.indexOf("url") != -1) {
tempsub.background.src = sAtt.bg_off.substring(4,sAtt.bg_off.length-1);
tempsub.background.src = sAtt.bg_off.substring(4,sAtt.bg_off.length-1);
}
else tempsub.bgColor = sAtt.bg_off;
tempsub.visibility = "inherit";
}
if(is.dom) {
var tempsub = document.createElement("DIV");
var wf = (is.ns6x || is.moz || is.strict) ? 12 : 0;
var styStr = "width:"+(sAtt.width-wf)+"px; font-weight:"+mAtt.font_weight+"; border:solid "+sAtt.border+"px "+sAtt.border_color+"; border-top-width:0px; color:"+sAtt.fg_off+"; text-align:"+sAtt.align+"; font-size:"+sAtt.font_size+"px; font-family:"+sAtt.font+"; padding:"+pf+"px 6px "+(pf+pf2)+"px 6px; background:"+sAtt.bg_off+"; cursor:pointer; cursor:hand;"
tempsub.id = name+menuName+"SubItem";
tempsub.innerHTML = txt;
tempsub.style.cssText = styStr;
tempsub.setAttribute("style", styStr);
this.subs[parent].lyr.appendChild(tempsub);
}
if(is.ie4) {
var wf = 12;
var styStr = "width:"+(sAtt.width-wf)+"px; font-weight:"+mAtt.font_weight+"; border:solid "+sAtt.border+"px "+sAtt.border_color+"; border-top-width:0px; color:"+sAtt.fg_off+"; text-align:"+sAtt.align+"; font-size:"+sAtt.font_size+"px; font-family:"+sAtt.font+"; padding:"+pf+"px 6px "+(pf+pf2)+"px 6px; background:"+sAtt.bg_off+"; cursor:pointer; cursor:hand;"
var ts = '<div id="'+name+menuName+'SubItem" style="'+styStr+'" onmouseover="over_out(this, \''+sAtt.bg_on+'\',\''+sAtt.fg_on+'\')" onmouseout="over_out(this, \''+sAtt.bg_off+'\', \''+sAtt.fg_off+'\')" onmousedown="location.href=\''+url+'\'">'+txt+'</div>';
this.subs[parent].lyr.insertAdjacentHTML("beforeEnd", ts);
}
if(!is.ie4) {
tempsub.onmouseover = Function('over_out(this, "'+sAtt.bg_on+'", "'+sAtt.fg_on+'")');
tempsub.onmouseout = Function('over_out(this, "'+sAtt.bg_off+'", "'+sAtt.fg_off+'")');
tempsub.onmousedown = Function('location.href = "'+url+'"');
}
}
menuObj.prototype.show = function(p) {
if( is.iemac && p == "v") {
this.sty.left = this.parent.offX()+mAtt.width+css_px;
this.sty.top = this.parent.offY()+(mAtt.height%2);
} else if (p=="h") {
this.sty.left = this.parent.offX()+ css_px;
this.sty.top = this.parent.offY()+ this.parent.offH()+css_px;
} else {
this.sty.left = this.parent.offX()+this.parent.offW()+css_px;
this.sty.top = this.parent.offY()+css_px;
}
this.sty.visibility = "visible";
this.sty.zIndex = "1";
this.doShow();
}
menuObj.prototype.doShow = function() {
clearTimeout(this.timer);
this.clipIt(0, this.offW(), this.wipe, 0);
this.wipe += 10;
if(this.wipe <= this.maxWipe()) this.timer = setTimeout(this.obj + ".doShow()",40);
}
menuObj.prototype.hide = function() {
clearTimeout(this.timer)
this.clipIt(0, this.offW(), this.wipe-10, 0);
this.wipe -= 10;
if(this.wipe >= 0) this.timer = setTimeout(this.obj + ".hide()",40);
else this.sty.visibility = "hidden";
}
function over_out(obj, bg, fg) {
if(is.ns4) {
if(bg.indexOf("url") != -1) obj.background.src = bg.substring(4,bg.length-1)
else obj.background.src = "", obj.bgColor = bg;
}
else {
if(bg.indexOf("url") != -1) obj.style.backgroundImage = bg;
else obj.style.backgroundImage = "url(blank)", obj.style.backgroundColor = bg;
obj.style.color = fg;
}
}
menuObj.prototype.clipIt = function(t,r,b,l) {
if(!is.ns4) this.sty.clip = "rect("+t+"px, "+r+"px, "+b+"px, "+l+"px)"
else {
this.sty.clip.top = t;
this.sty.clip.right = r;
this.sty.clip.bottom = b;
this.sty.clip.left = l;
}
}
wipeMenu.prototype.buildMenu = function(x,y,spacing) {
this.mainNum[0].sty.left = x+css_px;
this.mainNum[0].sty.top = y+css_px;
if(!is.ns4 && spacing == 0) var spacing = -this.mAtt.border;
for(i = 1; i < this.mainNum.length; i++) {
if(this.pos == "h") {
this.mainNum[i].sty.left = this.mainNum[i-1].offX()+this.mainNum[i-1].offW()+spacing+css_px;
this.mainNum[i].sty.top = this.mainNum[i-1].offY()+css_px;
} else {
this.mainNum[i].sty.left = this.mainNum[i-1].offX()+css_px;
this.mainNum[i].sty.top = this.mainNum[i-1].offY()+this.mainNum[i-1].offH()+spacing+css_px;
}
}
}
function wipeMenu(menu, p, ma, sa) {
this.name = menu;
this.pos = p;
this.mAtt = ma;
this.sAtt = (!sa) ? ma : sa;
this.main = [];
this.mainNum = [];
this.subs = [];
}
function macGo(){
if (is.iemac) {
history.go(0);
}
}
if(document.layers) {
var pX = innerWidth;
var pY = innerHeight;
onresize= function(){
if(pX!= innerWidth || pY!= innerHeight) history.go(0);
}
}
image1 = new Image()
image1.src = ""
image2 = new Image()
image2.src = ""
image3 = new Image()
image3.src = ""
image4 = new Image()
image4.src = ""
//M2Preload
//FinishM2
function initSwipeMenu() {
hMenu1Att = new Array();
hMenu1Att["width"] = 100,
hMenu1Att["height"] = 20,
hMenu1Att["align"] = "center";
hMenu1Att["font"] = "Verdana";
hMenu1Att["font_size"] = 12;
hMenu1Att["font_weight"] = "bold";
hMenu1Att["bg_off"] = "#FF0000";
hMenu1Att["bg_on"] = "#FFFF00";
hMenu1Att["fg_off"] = "#FFFFFF";
hMenu1Att["fg_on"] = "#FF0000";
hMenu1Att["border"] = 1;
hMenu1Att["border_color"] = "#000000";
hMenu1SubAtt = new Array();
hMenu1SubAtt["width"] = 100,
hMenu1SubAtt["height"] = 20,
hMenu1SubAtt["align"] = "center";
hMenu1SubAtt["font"] = "Verdana";
hMenu1SubAtt["font_size"] = 12;
hMenu1SubAtt["font_weight"] = "bold";
hMenu1SubAtt["bg_off"] = "#FF0000";
hMenu1SubAtt["bg_on"] = "#FFFF00";
hMenu1SubAtt["fg_off"] = "#FFFFFF";
hMenu1SubAtt["fg_on"] = "#FF0000";
hMenu1SubAtt["border"] = 1;
hMenu1SubAtt["border_color"] = "#000000";
hMenu1 = new wipeMenu("hMenu1", "h", hMenu1Att, hMenu1SubAtt);
//MenuTypeEnd
//xMenu1
hMenu1.addMain("Menu1", true, "Menu", "#");
hMenu1.addSub("Menu1Sub1", "Menu1", "A Bit About Me", "abitaboutme");
hMenu1.addSub("Menu1Sub2", "Menu1", "Games", "arcade/arcade");
//xMenu1End
//XtraMenusEnd
hMenu1.buildMenu(20,82,2);
//Additional
}
//SwipeMenuEnd
function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}
//-->
</script>
</head>
<body bgcolor="blue" text="#000000" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="initSwipeMenu()" onUnload="macGo()">
</body>
MR Cheese 01-25-2003, 06:58 PM Look at the site where you got the code from and see if it can target frames.
I had a look at that person's sites, and he uses the cool menu code from here: http://www.dhtmlcentral.com/projects/coolmenus/
|