Log in

View Full Version : chrome dropdown menu dropdown indicator



berdman
03-01-2013, 05:50 AM
Chrome CSS Drop Down Menu (v2.5)
http://www.dynamicdrive.com/dynamicindex1/chrome/index.htm
Win7 64-bit, IE9 and Firefox.

The indicator down arrow appears at the far left of the menu, not to the right of the menu item as the sample htm displays. I am using the code and css as provided. What am I doing wrong?


<link rel="stylesheet" type="text/css" href="chrometheme/chromestyle.css" />
<script type="text/javascript" src="chromejs/chrome.js">

/***********************************************
* Chrome CSS Drop Down Menu- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

</script>
</head>



<div class="chromestyle" id="chromemenu">
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="gallery-new.php" "#" rel="dropmenu1">Gallery</a></li>
<li><a href="artist.php">The Artist</a></li>
<li><a href="history.php">History</a></li>
<li><a href="contact.php">Contact Me</a></li>
<li><a href="kudos.php">Kudos</a></li>
<li><a href="ordering-info.php">Ordering Info</a></li>
<li><a href="show-schedule.php">Show Schedule</a></li>
<li><a href="video-demos.php">Video Demos</a></li>
<li><a href="links.php">Links</a></li>
</ul>
</div>


<!--1st drop down menu -->
<div id="dropmenu1" class="dropmenudiv">
<a href="show_cat.php?catid=2">Jewelry Boxes</a>
<a href="show_cat.php?catid=3">Wall Art</a>
<a href="show_cat.php?catid=4">Other Boxes</a>
<a href="show_cat.php?catid=5">Furniture</a>
</div>
<script type="text/javascript">

cssdropdown.startchrome("chromemenu")

</script>
</body>
</html>

Beverleyh
03-01-2013, 09:21 AM
Not sure - we'd really need to see a sample of your page to see how you've set it up and if there's anything else on the page that is affecting things.

Also, could you post a link to the script here on DD so we have an easy route to a direct comparison?

berdman
03-01-2013, 01:23 PM
Thanks for the response. I love responses that offer no help, only questions. Obviously the responder has not experienced my described problem and thus has no clue how to fix it. But then why bother responding?

My new website is being created on my laptop. I have no idea how to link to my work since my laptop is not a server. What else would help? I am using the code and CSS as given on the site. I have posted that code. How about the HTML?


<?php
include('bc.php');
$title = "Home";
$bc = new Breadcrumb($title, 'dddd');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Bruce Erdman - Joiner of Fine Furniture</title>
<Content-Type: text/html; charset=UTF-8></Content-Type:>
<title>Bruce Erdman - Joiner of Fine Furniture - Home of Fine Wood Working, Lovingly Created From
Beautiful Wood jewelry box Art furniture contemporary furniture modern furniture kuhl onyx kuhlonyx moated chess table&#x2122; oval Tambour&#x2122;</title>
<link href="new_ovaltambour.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="chrometheme/chromestyle.css" />
<script type="text/javascript" src="chromejs/chrome.js">

/***********************************************
* Chrome CSS Drop Down Menu- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

</script>
</head>

<body>
<div id="wrapper">
<div id="header">

<div class="htaddress">
<?php include ("htaddress.php") ?>
</div>
<div id="topmenu">
<?php include ("nav.php") ?>

</div>
<div id="headline">Bruce Erdman Joiner of Fine Furniture</div>
</div>
<div id="m_content">
<div class="crumb"><?php $bc->dropBreadcrumbs($title); ?></div>
<div id="himage"><img src="images/inventory/2010-46-5.jpg" alt="Every drawer receives custom drawer pulls." width="640" height="480" />
<div class="hcap">Every drawer receives custom drawer pulls.</div>
</div>
<div class="htext"><p>
<strong> Home of Fine Furniture Making, Lovingly Created From Beautiful Wood</strong>
</p>
<p>
<i>Read </i> <a href="restoredwoodshop/index.php" class="linkcolor" TARGET="_blank"> “ My
Story Of Restoration, ” </a></i> an encore career in furniture making.

</p>
</div>

</div>

<div id="footer">
<?php include ("footer.php") ?>
</div>

</div>
<!--1st drop down menu -->
<div id="dropmenu1" class="dropmenudiv">
<a href="show_cat.php?catid=2">Jewelry Boxes</a>
<a href="show_cat.php?catid=3">Wall Art</a>
<a href="show_cat.php?catid=4">Other Boxes</a>
<a href="show_cat.php?catid=5">Furniture</a>
</div>
<script type="text/javascript">

cssdropdown.startchrome("chromemenu")

</script>
</body>
</html>


And nav.php



<div class="chromestyle" id="chromemenu">
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="gallery-new.php" "#" rel="dropmenu1">Gallery</a></li>
<li><a href="artist.php">The Artist</a></li>
<li><a href="history.php">History</a></li>
<li><a href="contact.php">Contact Me</a></li>
<li><a href="kudos.php">Kudos</a></li>
<li><a href="ordering-info.php">Ordering Info</a></li>
<li><a href="show-schedule.php">Show Schedule</a></li>
<li><a href="video-demos.php">Video Demos</a></li>
<li><a href="links.php">Links</a></li>
</ul>
</div>

berdman
03-01-2013, 01:42 PM
And the CSS


.chromestyle{
width: 99%;
font-weight: bold;
}

.chromestyle:after{ /*Add margin between menu and rest of content in Firefox*/
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.chromestyle ul{
border: 1px solid #BBB;
width: 100%;
background: url(chromebg.gif) center center repeat-x; /*THEME CHANGE HERE*/
padding: 4px 0;
margin: 0;
text-align: left; /*set value to "left", "center", or "right"*/
font-size: 14px;
}

.chromestyle ul li{
display: inline;
}

.chromestyle ul li a{
color: #494949;
padding: 4px 7px;
margin: 0;
text-decoration: none;
border-right: 1px solid #DADADA;
}

.chromestyle ul li a:hover, .chromestyle ul li a.selected{ /*script dynamically adds a class of "selected" to the current active menu item*/
background: url(chromebg-over.gif) center center repeat-x; /*THEME CHANGE HERE*/
}

/* ######### Style for Drop Down Menu ######### */

.dropmenudiv{
position:absolute;
top: 0;
border: 1px solid #BBB; /*THEME CHANGE HERE*/
border-bottom-width: 0;
font:normal 12px Verdana;
line-height:18px;
z-index:100;
background-color: white;
width: 200px;
visibility: hidden;
}


.dropmenudiv a{
width: auto;
display: block;
text-indent: 3px;
border-bottom: 1px solid #BBB; /*THEME CHANGE HERE*/
padding: 2px 0;
text-decoration: none;
font-weight: bold;
color: black;
}

* html .dropmenudiv a{ /*IE only hack*/
width: 100%;
}

.dropmenudiv a:hover{ /*THEME CHANGE HERE*/
background-color: #F0F0F0;
}

Screenshot. Note that Gallery is the only menu item with a drop down and the arrow is on the left.

4954

berdman
03-01-2013, 02:02 PM
And the .js file


//** Chrome Drop Down Menu- Author: Dynamic Drive (http://www.dynamicdrive.com)

//** Updated: July 14th 06' to v2.0
//1) Ability to "left", "center", or "right" align the menu items easily, just by modifying the CSS property "text-align".
//2) Added an optional "swipe down" transitional effect for revealing the drop down menus.
//3) Support for multiple Chrome menus on the same page.

//** Updated: Nov 14th 06' to v2.01- added iframe shim technique

//** Updated: July 23rd, 08 to v2.4
//1) Main menu items now remain "selected" (CSS class "selected" applied) when user moves mouse into corresponding drop down menu.
//2) Adds ability to specify arbitrary HTML that gets added to the end of each menu item that carries a drop down menu (ie: a down arrow image).
//3) All event handlers added to the menu are now unobstrusive, allowing you to define your own "onmouseover" or "onclick" events on the menu items.
//4) Fixed elusive JS error in FF that sometimes occurs when mouse quickly moves between main menu items and drop down menus

//** Updated: Oct 29th, 08 to v2.5 (only .js file modified from v2.4)
//1) Added ability to customize reveal animation speed (# of steps)
//2) Menu now works in IE8 beta2 (a valid doctype at the top of the page is required)

var cssdropdown={
disappeardelay: 250, //set delay in miliseconds before menu disappears onmouseout
dropdownindicator: '<img src="down.gif" border="0" />', //specify full HTML to add to end of each menu item with a drop down menu
enablereveal: [true, 5], //enable swipe effect? [true/false, steps (Number of animation steps. Integer between 1-20. Smaller=faster)]
enableiframeshim: 1, //enable "iframe shim" in IE5.5 to IE7? (1=yes, 0=no)

//No need to edit beyond here////////////////////////

dropmenuobj: null, asscmenuitem: null, domsupport: document.all || document.getElementById, standardbody: null, iframeshimadded: false, revealtimers: {},

getposOffset:function(what, offsettype){
var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
var parentEl=what.offsetParent;
while (parentEl!=null){
totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
parentEl=parentEl.offsetParent;
}
return totaloffset;
},

css:function(el, targetclass, action){
var needle=new RegExp("(^|\\s+)"+targetclass+"($|\\s+)", "ig")
if (action=="check")
return needle.test(el.className)
else if (action=="remove")
el.className=el.className.replace(needle, "")
else if (action=="add" && !needle.test(el.className))
el.className+=" "+targetclass
},

showmenu:function(dropmenu, e){
if (this.enablereveal[0]){
if (!dropmenu._trueheight || dropmenu._trueheight<10)
dropmenu._trueheight=dropmenu.offsetHeight
clearTimeout(this.revealtimers[dropmenu.id])
dropmenu.style.height=dropmenu._curheight=0
dropmenu.style.overflow="hidden"
dropmenu.style.visibility="visible"
this.revealtimers[dropmenu.id]=setInterval(function(){cssdropdown.revealmenu(dropmenu)}, 10)
}
else{
dropmenu.style.visibility="visible"
}
this.css(this.asscmenuitem, "selected", "add")
},

revealmenu:function(dropmenu, dir){
var curH=dropmenu._curheight, maxH=dropmenu._trueheight, steps=this.enablereveal[1]
if (curH<maxH){
var newH=Math.min(curH, maxH)
dropmenu.style.height=newH+"px"
dropmenu._curheight= newH + Math.round((maxH-newH)/steps) + 1
}
else{ //if done revealing menu
dropmenu.style.height="auto"
dropmenu.style.overflow="hidden"
clearInterval(this.revealtimers[dropmenu.id])
}
},

clearbrowseredge:function(obj, whichedge){
var edgeoffset=0
if (whichedge=="rightedge"){
var windowedge=document.all && !window.opera? this.standardbody.scrollLeft+this.standardbody.clientWidth-15 : window.pageXOffset+window.innerWidth-15
var dropmenuW=this.dropmenuobj.offsetWidth
if (windowedge-this.dropmenuobj.x < dropmenuW) //move menu to the left?
edgeoffset=dropmenuW-obj.offsetWidth
}
else{
var topedge=document.all && !window.opera? this.standardbody.scrollTop : window.pageYOffset
var windowedge=document.all && !window.opera? this.standardbody.scrollTop+this.standardbody.clientHeight-15 : window.pageYOffset+window.innerHeight-18
var dropmenuH=this.dropmenuobj._trueheight
if (windowedge-this.dropmenuobj.y < dropmenuH){ //move up?
edgeoffset=dropmenuH+obj.offsetHeight
if ((this.dropmenuobj.y-topedge)<dropmenuH) //up no good either?
edgeoffset=this.dropmenuobj.y+obj.offsetHeight-topedge
}
}
return edgeoffset
},

dropit:function(obj, e, dropmenuID){
if (this.dropmenuobj!=null) //hide previous menu
this.hidemenu() //hide menu
this.clearhidemenu()
this.dropmenuobj=document.getElementById(dropmenuID) //reference drop down menu
this.asscmenuitem=obj //reference associated menu item
this.showmenu(this.dropmenuobj, e)
this.dropmenuobj.x=this.getposOffset(obj, "left")
this.dropmenuobj.y=this.getposOffset(obj, "top")
this.dropmenuobj.style.left=this.dropmenuobj.x-this.clearbrowseredge(obj, "rightedge")+"px"
this.dropmenuobj.style.top=this.dropmenuobj.y-this.clearbrowseredge(obj, "bottomedge")+obj.offsetHeight+1+"px"
this.positionshim() //call iframe shim function
},

positionshim:function(){ //display iframe shim function
if (this.iframeshimadded){
if (this.dropmenuobj.style.visibility=="visible"){
this.shimobject.style.width=this.dropmenuobj.offsetWidth+"px"
this.shimobject.style.height=this.dropmenuobj._trueheight+"px"
this.shimobject.style.left=parseInt(this.dropmenuobj.style.left)+"px"
this.shimobject.style.top=parseInt(this.dropmenuobj.style.top)+"px"
this.shimobject.style.display="block"
}
}
},

hideshim:function(){
if (this.iframeshimadded)
this.shimobject.style.display='none'
},

isContained:function(m, e){
var e=window.event || e
var c=e.relatedTarget || ((e.type=="mouseover")? e.fromElement : e.toElement)
while (c && c!=m)try {c=c.parentNode} catch(e){c=m}
if (c==m)
return true
else
return false
},

dynamichide:function(m, e){
if (!this.isContained(m, e)){
this.delayhidemenu()
}
},

delayhidemenu:function(){
this.delayhide=setTimeout("cssdropdown.hidemenu()", this.disappeardelay) //hide menu
},

hidemenu:function(){
this.css(this.asscmenuitem, "selected", "remove")
this.dropmenuobj.style.visibility='hidden'
this.dropmenuobj.style.left=this.dropmenuobj.style.top="-1000px"
this.hideshim()
},

clearhidemenu:function(){
if (this.delayhide!="undefined")
clearTimeout(this.delayhide)
},

addEvent:function(target, functionref, tasktype){
if (target.addEventListener)
target.addEventListener(tasktype, functionref, false);
else if (target.attachEvent)
target.attachEvent('on'+tasktype, function(){return functionref.call(target, window.event)});
},

startchrome:function(){
if (!this.domsupport)
return
this.standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body
for (var ids=0; ids<arguments.length; ids++){
var menuitems=document.getElementById(arguments[ids]).getElementsByTagName("a")
for (var i=0; i<menuitems.length; i++){
if (menuitems[i].getAttribute("rel")){
var relvalue=menuitems[i].getAttribute("rel")
var asscdropdownmenu=document.getElementById(relvalue)
this.addEvent(asscdropdownmenu, function(){cssdropdown.clearhidemenu()}, "mouseover")
this.addEvent(asscdropdownmenu, function(e){cssdropdown.dynamichide(this, e)}, "mouseout")
this.addEvent(asscdropdownmenu, function(){cssdropdown.delayhidemenu()}, "click")
try{
menuitems[i].innerHTML=menuitems[i].innerHTML+" "+this.dropdownindicator
}catch(e){}
this.addEvent(menuitems[i], function(e){ //show drop down menu when main menu items are mouse over-ed
if (!cssdropdown.isContained(this, e)){
var evtobj=window.event || e
cssdropdown.dropit(this, evtobj, this.getAttribute("rel"))
}
}, "mouseover")
this.addEvent(menuitems[i], function(e){cssdropdown.dynamichide(this, e)}, "mouseout") //hide drop down menu when main menu items are mouse out
this.addEvent(menuitems[i], function(){cssdropdown.delayhidemenu()}, "click") //hide drop down menu when main menu items are clicked on
}
} //end inner for
} //end outer for
if (this.enableiframeshim && document.all && !window.XDomainRequest && !this.iframeshimadded){ //enable iframe shim in IE5.5 thru IE7?
document.write('<IFRAME id="iframeshim" src="about:blank" frameBorder="0" scrolling="no" style="left:0; top:0; position:absolute; display:none;z-index:90; background: transparent;"></IFRAME>')
this.shimobject=document.getElementById("iframeshim") //reference iframe object
this.shimobject.style.filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)'
this.iframeshimadded=true
}
} //end startchrome

}

Beverleyh
03-01-2013, 02:50 PM
Thanks for the js code, however, it would be easiest if you provide a link to your page so we can see your individual setup.

If you've copied the demo page exactly (and we can't say for sure because you haven't provided the link to the demo page as a base comparison) then presumably it would work as expected. However, as you're asking questions, and have identified an undesirable behaviour in Forefox and IE9, then it's very likely that either you've set it up incorrectly OR something else on the page is causing conflicts.

Another thought though - Is the DD demo page showing the same undesirable behaviour? Please provide the demo page link so we can quickly go over there to check it out.

I appreciate that we could take all of the code you've pasted (except the CSS file which is missing) and make our own versions of the web page, but that isnt really helping you when it its your page that is showing problems. It will just invite further confused back-and-forth questions and answers.

If you'd like help, please post a link to your live web page (the one showing the strange behaviour) and provide a link to the script demo page here on DD for comparison.

berdman
03-01-2013, 03:17 PM
I explained all that and posted everything. I don't know why my posts are not all showing up. I can't link to my work because it is on my laptop for now.

berdman
03-01-2013, 03:19 PM
P.S. The demo works fine on my computer even with my code.

berdman
03-01-2013, 03:22 PM
HTML


<?php
include('bc.php');
$title = "Home";
$bc = new Breadcrumb($title, 'dddd');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Bruce Erdman - Joiner of Fine Furniture</title>
<Content-Type: text/html; charset=UTF-8></Content-Type:>
<title>Bruce Erdman - Joiner of Fine Furniture - Home of Fine Wood Working, Lovingly Created From
Beautiful Wood jewelry box Art furniture contemporary furniture modern furniture kuhl onyx kuhlonyx moated chess table&#x2122; oval Tambour&#x2122;</title>
<link href="new_ovaltambour.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" type="text/css" href="chrometheme/chromestyle.css" />
<script type="text/javascript" src="chromejs/chrome.js">

/***********************************************
* Chrome CSS Drop Down Menu- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

</script>
</head>

<body>
<div id="wrapper">
<div id="header">

<div class="htaddress">
<?php include ("htaddress.php") ?>
</div>
<div id="topmenu">
<?php include ("nav.php") ?>

</div>
<div id="headline">Bruce Erdman Joiner of Fine Furniture</div>
</div>
<div id="m_content">
<div class="crumb"><?php $bc->dropBreadcrumbs($title); ?></div>
<div id="himage"><img src="images/inventory/2010-46-5.jpg" alt="Every drawer receives custom drawer pulls." width="640" height="480" />
<div class="hcap">Every drawer receives custom drawer pulls.</div>
</div>
<div class="htext"><p>
<strong> Home of Fine Furniture Making, Lovingly Created From Beautiful Wood</strong>
</p>
<p>
<i>Read </i> <a href="restoredwoodshop/index.php" class="linkcolor" TARGET="_blank"> “ My
Story Of Restoration, ” </a></i> an encore career in furniture making.

</p>
</div>

</div>

<div id="footer">
<?php include ("footer.php") ?>
</div>

</div>
<!--1st drop down menu -->
<div id="dropmenu1" class="dropmenudiv">
<a href="show_cat.php?catid=2">Jewelry Boxes</a>
<a href="show_cat.php?catid=3">Wall Art</a>
<a href="show_cat.php?catid=4">Other Boxes</a>
<a href="show_cat.php?catid=5">Furniture</a>
</div>
<script type="text/javascript">

cssdropdown.startchrome("chromemenu")

</script>
</body>
</html>

CSS


.chromestyle{
width: 99%;
font-weight: bold;
}

.chromestyle:after{ /*Add margin between menu and rest of content in Firefox*/
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.chromestyle ul{
border: 1px solid #BBB;
width: 100%;
background: url(chromebg.gif) center center repeat-x; /*THEME CHANGE HERE*/
padding: 4px 0;
margin: 0;
text-align: left; /*set value to "left", "center", or "right"*/
font-size: 14px;
}

.chromestyle ul li{
display: inline;
}

.chromestyle ul li a{
color: #494949;
padding: 4px 7px;
margin: 0;
text-decoration: none;
border-right: 1px solid #DADADA;
}

.chromestyle ul li a:hover, .chromestyle ul li a.selected{ /*script dynamically adds a class of "selected" to the current active menu item*/
background: url(chromebg-over.gif) center center repeat-x; /*THEME CHANGE HERE*/
}

/* ######### Style for Drop Down Menu ######### */

.dropmenudiv{
position:absolute;
top: 0;
border: 1px solid #BBB; /*THEME CHANGE HERE*/
border-bottom-width: 0;
font:normal 12px Verdana;
line-height:18px;
z-index:100;
background-color: white;
width: 200px;
visibility: hidden;
}


.dropmenudiv a{
width: auto;
display: block;
text-indent: 3px;
border-bottom: 1px solid #BBB; /*THEME CHANGE HERE*/
padding: 2px 0;
text-decoration: none;
font-weight: bold;
color: black;
}

* html .dropmenudiv a{ /*IE only hack*/
width: 100%;
}

.dropmenudiv a:hover{ /*THEME CHANGE HERE*/
background-color: #F0F0F0;
}

Screen shot

4955

Beverleyh
03-01-2013, 03:31 PM
Maybe some of your missing posts are in the moderation queue. I'll wait to see what extra information you've posted once those have been authorised as what you're saying may make more sense in full and complete context.

berdman
03-01-2013, 05:07 PM
Moderation sure takes a long time! How come some posts go straight through and apprar right away?

Beverleyh
03-01-2013, 06:24 PM
It depends what's included in the post - links can sometimes cause problems so I know the mods have suggested to new members that they should just past the page URL, minus the http:// part (so it stays un-hyperlinked)

You still reference another CSS file that we haven't seen yet - there's one for the menu and another called "new_ovaltambour.css". We'll need both

Also, your page code references php includes that we can't see the markup for. It isn't the php includes that we need, rather the markup they generate, so it would be better to first view the web page in your browser and then view the source code, and copy and paste *that* here for us - that's going to give us a more complete picture than hinting at php content we can't access.

At the end if the day, a live web page link really is the best thing to give to us. Can you upload what you have so far to a test area? When you paste code in different blocks in a forum, you're asking us to make extra effort to build something up on you behalf, which isn't always possible. For example, I'm on iphone now for the whole weekend so I won't be able to do any copy and paste testing stuff until I'm back on PC next week sometime. There's also the other angle where people will be less likely to drop by to offer help on the offchance, because you haven't made it particularly easy for them.

Also, you still need to provide a link to the script demo page here on DD. Again, this is going back to the expectation that the person who wants help, makes it easy for others to give help.

berdman
03-01-2013, 06:58 PM
Basically, I am only asking if someone has seen the behavior I am experiencing, and if so, what did they do to correct it. I am not asking for someone to try to "discover" the cause of my problem. I am no where near ready to move my dev code up to the host. I have five years of code to clean up and hundreds of images to sort through to make things current.

Isn't this the link you say I am missing?

/***********************************************
* Chrome CSS Drop Down Menu- (c) Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

Beverleyh
03-01-2013, 07:30 PM
The URL to the demo page on DD - that's the copyright fragment with a link to DD home page but sadly not the link to the source/origin page on DD with the actual menu script you're using.

We can't really say if we've seen this behaviour before because we have no point of reference. If the demo script on DD has images on the left, but yours are on the right, then your menu CSS differs in some way - either that or the additional CSS file contains something that's affecting things. We can't confirm that though because we haven't seen it.

Without seeing that other CSS file, the only suggestion I can make is that something (maybe all images) is floated left.

Another reason might be that there are configuration settings detailed on the DD script demo page that have put the arrows on the left of the buttons, but again, that's just a guess as I haven't seen the setup instructions on that page.

Believe me, I'm not doing this to be awkward - I just can't give you the answers you want/need because you have so far been unable to provide all the information I need. I've made a few sensible suggestions but I can't give you anything more concrete without all the information upfront.

Beverleyh
03-01-2013, 07:33 PM
A third suggestion - copy the demo menu again on a blank page and gradually build up the rest of your page again around it. Do it a few lines of markup and CSS at a time and check in a browser between saves. That's the best way to pinpoint a problem. Once you know what causes the problem you can find a fix more easily.

berdman
03-01-2013, 08:04 PM
I shall try the third suggestion.

I still don't understand where this link to the DD demo should appear and on what page of my site. Sorry, but I am quite challanged as I am a male. :)

Beverleyh
03-01-2013, 08:30 PM
No problem - I shall elaborate;

You need to post the link to the demo page here in the forum so it shows up in your post/thread.

Its so we can easily go to visit the demo page and check it against yours.

There are so many resources here on DD that a name alone can sometimes be ambiguous and a search then becomes another task being laid upon us in addition to providing a fix for a specific issue.

I think the problem stems from this thread being started in the incorrect forum - it should have gone into the DD scripts help forum and been in this format: http://www.dynamicdrive.com/forums/showthread.php?6-Please-follow-the-following-format-when-posting-a-question-here
(The post is a sticky at the top of that forum)

berdman
03-01-2013, 09:37 PM
Okay, I added the info to my first post. I'm sure it helps if one follows the rules. But remember, I am a male and thus won't read the instructions first like I should.

Do I need to repost in the other forum?

berdman
03-02-2013, 03:57 AM
Using the third suggestion I was able to determine that the position of the chrome drop down script was critical. I now have the menu working as desired.

jscheuer1
03-02-2013, 05:51 AM
OK. I've approved the posts.

Some information on posts that get held back:

As moderators we have no control over what the forum's filters hold back, and what they let through. We don't even know for sure what all of the criteria are. To make matters a little more difficult, when a post is held back, it only shows up in the recent posts view if it's the first post in a new thread. If it's not, it does show up in the moderator's control panel, but I think I may be the only moderator who checks that with any frequency. If I'm busy, I might not see those right away. Or even if I do, I might not have the time to inspect them closely enough to determine if they should be approved or not.

Long posts seem to tend to get held back, as do posts with hot links in them. The safest thing to do is to post a link to your page or (if that page is offline) to a demo of the problem that you can put up somewhere on the web.

The link should not be a hot link though. Use a text only link - just the domain name and path. Do not preface with http or www. An example of a text only link:

example.com/somefolder/some.htm

If you type it like any of these:


www.example.com/somefolder/some.htm

http://example.com/somefolder/some.htm

http://www.example.com/somefolder/some.htm

It will automatically be converted to a hot link, that is unless it's in a code block like I just did to prevent hot linking.

Beverleyh
03-02-2013, 08:45 AM
I see your posts have been approved now. I have to say, had your 2nd post in the thread trickled through sooner, I would not have continued responding
I love responses that offer no help, only questions. Obviously the responder has not experienced my described problem and thus has no clue how to fix it. But then why bother responding?There is no need to be rude and sarcastic when somebody is trying to help you. I responded to your initial question to courteously let you know that we needed more information (that begin the reason why I had "no clue how to fix it"), and if *I* hadn't have asked for additional information, somebody else would have.

djr33
03-02-2013, 09:37 AM
berdman, you're asking for free help, and you can actually get that here. But be nice about it. And do be aware that the clearer your posts are, the more helpful the replies will be. For some reason new users tend to believe that there's some kind of attitude specifically for them giving them a hard time-- I can promise you there's no such policy.

When asking for help, we expect you to do most of the work:
1) Post all the information you know. We don't want to guess anything. You are, at least in some ways, an expert in your problem (even if that's just knowing what's not working).
--This includes giving us all of the relevant code, or a link to your page; guessing is a waste of time-- we can often solve the problems, but not when information isn't available to us.
2) Explain exactly what you want, and why it isn't working.
3) Explain what you have tried, in detail. Did it help? Why/why not?

If any of those aren't addressed in detail, someone will reply asking for more information (I can almost guarantee that); we can't read your mind, and we do need all of that information. It's very rare to come across an identical problem, so whether or not those helping you are "experts" they still need to know enough about your specific situation to apply their knowledge.

A well-written description of a problem should lead to, potentially, an immediate reply that takes just a minute or two to figure out and write-- the goal is to supplement what you know with the details from our experience, not to take apart your webpage and start all the way back at the beginning. Of course some problems take a little longer than that or more work to solve, but the idea is the same-- your post should quickly get us up to speed with exactly where you are, and then our help will be useful and accurate.



I say this because I assume you're making an effort to have a productive experience here, so I hope explaining the reasoning behind it will make it seem a little more logical. (Oddly enough, as I said, a lot of new users don't see any of that as logical and then take responses personally.)




As for the posts being moderated, just be a little more patient. I realize it's annoying. We very rarely miss posts, and when we do see them it's usually within a few hours of it being posted. The automatic spam filter does a good job, sometimes too good a job. But without these measures against spam, there would be a lot of spam messages getting in the way of everything. We do work to improve the system from time to time, so it may improve soon. And it's unlikely that you'll have the same problem again.