Avatar billede lesp Nybegynder
30. december 2007 - 19:38 Der er 1 løsning

Dynamisk menu

Hej eksperter

Jeg har en menu i min fil. Da jeg ikke selv kan javascript ville jeg være taknemmelig for enhver form for hjælp. Filen ser ud som følger:

<?
include("connect.php");
?>
<html>
<head>

<script language="JavaScript" type="text/javascript">
<!-- // Skjul for gamle browsere

function popUp(strURL, intWidth, intHeight) {
  var intLeft = (screen.availWidth - intWidth - 10) / 2;
  var intTop  = (screen.availHeight - intHeight - 98) / 2;

  objWin = window.open(strURL, 'popup', 'left=' + intLeft + ',top=' + intTop + ',width=' + intWidth + ',height=' + intHeight + ',menubar=no,toolbar=no,location=no,status=no,scrollbars=yes,resizable=no');
}

// -->
</script>

<style type="text/css">

/*Credits: Dynamic Drive CSS Library */
/*URL: http://www.dynamicdrive.com/style/ */

.solidblockmenu{
margin: 0;
padding: 0;
float: left;
font: bold 13px Arial;
width: 100%;
border: 1px solid #625e00;
border-width: 1px 0;
background: black url(media/blockdefault.gif) center center repeat-x;
}

.solidblockmenu li{
display: inline;
}

.solidblockmenu li a{
float: left;
color: white;
padding: 9px 11px;
text-decoration: none;
border-right: 1px solid white;
}

.solidblockmenu li a:visited{
color: white;
}

.solidblockmenu li a:hover, .solidblockmenu li .current{
color: white;
background: transparent url(media/blockactive.gif) center center repeat-x;
}

#dropmenudiv{
position:absolute;
background-color: #d3d3d3;
border:1px solid black;
border-bottom-width: 0;
font:normal 10px Verdana;
line-height:16px;
z-index:100;
}

#dropmenudiv a{
width: 100%;
display: block;
text-indent: 3px;
border-bottom: 1px solid black;
padding: 1px 0;
text-decoration: none;
font-weight: bold;
}

#dropmenudiv a:hover{ /*hover background color*/
background-color: #eaeae9;
}

/* Sample CSS definition for the example list. Remove if desired */
.navlist li {
list-style-type: square;
width: 100%;
background-color: #F0F0F0;
}

</style>


<script type="text/javascript">

/***********************************************
* AnyLink Vertical Menu- © Dynamic Drive (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

//Contents for menu 3, and so on-Ravsmykker
var menu3=new Array()
menu3[0]='<a href="smykker2.php?id=$data[id]&kategori=ravsmykker&underkategori=halssmykker">Halssmykker</a>'

menu3[1]='<a href="smykker.php?kategori=ravsmykker&underkategori=armbaand">Armbånd</a>'
menu3[2]='<a href="smykker.php?kategori=ravsmykker&underkategori=brocher">Brocher</a>'
menu3[3]='<a href="smykker.php?kategori=ravsmykker&underkategori=oresmykker>Øresmykker</a>'


//Contents for menu 7, and so on- Geometrics
var menu7=new Array()
menu7[0]='<a href="smykker2.php?id=1kategori=geometrics&underkategori=halssmykker">Halssmykker</a>'
menu7[1]='<a href="smykker.php?kategori=geometrics&underkategori=clips">Clips</a>'
menu7[2]='<a href="smykker.php?kategori=geometrics&underkategori=broche">Broche</a>'
menu7[3]='<a href="smykker.php?kategori=geometrics&underkategori=oresmykker">Øresmykker</a>'

//Contents for menu 9, and so on-Herresmykker
var menu9=new Array()
menu9[0]='<a href="smykker.php?kategori=herresmykker&underkategori=manchetknapper">Manchetknapper</a>'
menu9[1]='<a href="smykker.php?kategori=herresmykker&underkategori=slipsenaale">Slipsenåle</a>'



       
var disappeardelay=250  //menu disappear speed onMouseout (in miliseconds)
var horizontaloffset=2 //horizontal offset of menu from default location. (0-5 is a good value)

/////No further editting needed

var ie4=document.all
var ns6=document.getElementById&&!document.all

if (ie4||ns6)
document.write('<div id="dropmenudiv" style="visibility:hidden;width: 160px" onMouseover="clearhidemenu()" onMouseout="dynamichide(event)"></div>')

function getposOffset(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;
}


function showhide(obj, e, visible, hidden, menuwidth){
if (ie4||ns6)
dropmenuobj.style.left=dropmenuobj.style.top=-500
dropmenuobj.widthobj=dropmenuobj.style
dropmenuobj.widthobj.width=menuwidth
if (e.type=="click" && obj.visibility==hidden || e.type=="mouseover")
obj.visibility=visible
else if (e.type=="click")
obj.visibility=hidden
}

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

function clearbrowseredge(obj, whichedge){
var edgeoffset=0
if (whichedge=="rightedge"){
var windowedge=ie4 && !window.opera? iecompattest().scrollLeft+iecompattest().clientWidth-15 : window.pageXOffset+window.innerWidth-15
dropmenuobj.contentmeasure=dropmenuobj.offsetWidth
if (windowedge-dropmenuobj.x-obj.offsetWidth < dropmenuobj.contentmeasure)
edgeoffset=dropmenuobj.contentmeasure+obj.offsetWidth
}
else{
var topedge=ie4 && !window.opera? iecompattest().scrollTop : window.pageYOffset
var windowedge=ie4 && !window.opera? iecompattest().scrollTop+iecompattest().clientHeight-15 : window.pageYOffset+window.innerHeight-18
dropmenuobj.contentmeasure=dropmenuobj.offsetHeight
if (windowedge-dropmenuobj.y < dropmenuobj.contentmeasure){ //move menu up?
edgeoffset=dropmenuobj.contentmeasure-obj.offsetHeight
if ((dropmenuobj.y-topedge)<dropmenuobj.contentmeasure) //up no good either? (position at top of viewable window then)
edgeoffset=dropmenuobj.y
}
}
return edgeoffset
}

function populatemenu(what){
if (ie4||ns6)
dropmenuobj.innerHTML=what.join("")
}


function dropdownmenu(obj, e, menucontents, menuwidth){
if (window.event) event.cancelBubble=true
else if (e.stopPropagation) e.stopPropagation()
clearhidemenu()
dropmenuobj=document.getElementById? document.getElementById("dropmenudiv") : dropmenudiv
populatemenu(menucontents)

if (ie4||ns6){
showhide(dropmenuobj.style, e, "visible", "hidden", menuwidth)
dropmenuobj.x=getposOffset(obj, "left")
dropmenuobj.y=getposOffset(obj, "top")
dropmenuobj.style.left=dropmenuobj.x-clearbrowseredge(obj, "rightedge")+obj.offsetWidth+horizontaloffset+"px"
dropmenuobj.style.top=dropmenuobj.y-clearbrowseredge(obj, "bottomedge")+"px"
}

return clickreturnvalue()
}

function clickreturnvalue(){
if (ie4||ns6) return false
else return true
}

function contains_ns6(a, b) {
while (b.parentNode)
if ((b = b.parentNode) == a)
return true;
return false;
}

function dynamichide(e){
if (ie4&&!dropmenuobj.contains(e.toElement))
delayhidemenu()
else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
delayhidemenu()
}

function hidemenu(e){
if (typeof dropmenuobj!="undefined"){
if (ie4||ns6)
dropmenuobj.style.visibility="hidden"
}
}

function delayhidemenu(){
if (ie4||ns6)
delayhide=setTimeout("hidemenu()",disappeardelay)
}

function clearhidemenu(){
if (typeof delayhide!="undefined")
clearTimeout(delayhide)
}

</script>

</style>

<!--[if IE]>
<style type="text/css">
p.iepara{ /*Conditional CSS- For IE (inc IE7), create 1em spacing between menu and paragraph that follows*/
padding-top: 1em;
}
</style>
<![endif]-->
</head>
<?

echo"

<center>
<body bgcolor='#5e5d5d' leftmargin='0' topmargin='0' marginwidth='0' marginheight='0' alink='#5c5b5b' vlink='#5c5b5b' link='#5c5b5b'>
<!-- ImageReady Slices (Prøve designkalr til slize.psd) -->
<table id='Table_01' width='801' height='601' border='0' cellpadding='0' cellspacing='0'>
    <tr>
        <td colspan='10'>
            <img src='images/design-smykker_01.gif' width='800' height='45' alt=''></td>
        <td>
            <img src='images/spacer.gif' width='1' height='45' alt=''></td>
    </tr>
    <tr>
        <td rowspan='11' background='images/design-smykker_02.gif' width='56' height='555' alt=''></td>
        <td colspan='7' background='images/design-smykker_03.gif' width='305' height='49' alt=''></td>
        <td colspan='2' background='images/design-smykker_04.gif' width='439' height='49' alt=''></td>
        <td background='images/spacer.gif' width='1' height='49' alt=''></td>
    </tr>
    <tr>
        <td rowspan='8' background='images/design-smykker_05.gif' width='1' height='370' alt=''></td>
        <td colspan='7' background='images/design-smykker_06.gif' width='608' height='35' alt=''><b>
               

<ul class='solidblockmenu'>
<li><a href='http://www.dynamicdrive.com/' class='current'>Forside</a></li>
<li><a href='http://www.dynamicdrive.com/style/'>Om os</a></li>
<li><a href='http://tools.dynamicdrive.com'>Indkøbsvogn</a></li>
<li><a href='http://www.javascriptkit.com/'>Salgsbetingelser</a></li>
<li><a href='http://www.javascriptkit.com/'>Kommende aktiviteter</a></li>
<li><a href='http://www.cssdrive.com'>Kontakt  </a></li>
</ul>
<br style='clear: left' />
                </b></td>
        <td rowspan='10' background='images/design-smykker_07.gif' width='135' height='506' alt=''></td>
        <td background='images/spacer.gif' width='1' height='35' alt=''></td>
    </tr>
    <tr>
        <td colspan='5' background='images/design-smykker_08.gif' width='259' height='2' alt=''></td>
        <td colspan='2' rowspan='2' background='images/design-smykker_09.gif' width='349' height='36' alt=''><font size='1' color='5c5b5b'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<b>
                ";
                $foresp = mysql_query("SELECT * FROM smykker WHERE kategori = '$_GET[kategori]' and underkategori = '$_GET[underkategori]' and id='$_GET[id]'");
$data = mysql_fetch_array($foresp);
/* Antallet af poster vi ønsker vist på hver side */
$pr_side = 3;

/* Vi tæller antallet af poster i tabellen husk at ændre ‘table’ til dit eget tabelnavn */
$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM smykker"),0) or die(mysql_error());

/* Hvis visfra-variablen ikke findes i URL-feltet og den ikke er et nummer og den er større end antallet i databasen, så sættes den til 0, ellers sættes den til værdien fra URL feltet */
$vis_fra = (isset($_GET["visfra"]) && is_numeric($_GET["visfra"]) && $_GET["visfra"] < $antal) ? $_GET["visfra"] : 0;

/* Vi laver et database udtræk med limit, så den kun hiver det rigtige antal ud fra tabellen, husk at ændre ‘table’ til dit eget tabelnavn */
$query = mysql_query ("SELECT * FROM smykker WHERE kategori = '$_GET[kategori]' and underkategori = '$_GET[underkategori]' ORDER BY id DESC limit $vis_fra, $pr_side") or die(mysql_error());
/* Vi kører en while og udskriver data, det jeg har sat på er blot et eksempel */

/* Der undersøges om der skal udskrives et ”forrige side”-link, er dette tilfældet udskrives linket */
if ($vis_fra > 0) {
$back= $vis_fra - $pr_side;
echo "<a href='$_SERVER[PHP_SELF]?visfra=$back&id=$_GET[id]&kategori=$_GET[kategori]&underkategori=$_GET[underkategori]'>FORRIGE</a> ";
}
$page = 1;

/* Alle siderne udskrives så man med et klik kan få resultaterne fra fx 90-100 */
for ($start = 0; $antal > $start; $start = $start + $pr_side) {
if($vis_fra != $page * $pr_side - $pr_side) {
echo "<a href='$_SERVER[PHP_SELF]?visfra=$start&id=$_GET[id]&kategori=$_GET[kategori]&underkategori=$_GET[underkategori]'>$page</a> ";
} else {
echo $page." ";
}
$page++;
}

/* Der undersøges om der skal udskrives et ”næste side”-link, er dette tilfældet udskrives linket */
if ($vis_fra < $antal - $pr_side) {
$next = $vis_fra + $pr_side;
echo " <a href='$_SERVER[PHP_SELF]?visfra=$next&id=$_GET[id]&kategori=$_GET[kategori]&underkategori=$_GET[underkategori]'>NÆSTE</a> ";

}
echo"
</font></td>
        <td background='images/spacer.gif' width='1' height='2' alt=''></td>
    </tr>
    <tr>
        <td colspan='3' background='images/design-smykker_10.gif' width='149' height='34' alt=''><font color='#5a5b5b' size='2'><center>VÆLG PRODUKT</center></font></td>
        <td rowspan='8' background='images/design-smykker_11.gif' width='1' height='469' alt=''></td>
        <td>
                <img src='images/design-smykker_12.gif' width='109' height='34' alt=''></td>
        <td>
                <img src='images/spacer.gif' width='1' height='34' alt=''></td>
    </tr>
    <tr>
        <td colspan='3' rowspan='2' background='images/design-smykker_13.gif' width='149' height='176' alt='' valign='top'><br><font='#5c5b5b'>

<ul class='navlist'>
<li><a href='http://www.javascriptkit.com'><font size='2'>Elegance</font></a> </li>
<li onMouseover='dropdownmenu(this, event, menu7, '150px')' onMouseout='delayhidemenu()'><a href='http://www.javascriptkit.com'><font size='2'>Geometrics</font></a> <span style='position: relative; left: 2px'></span></li>
<li><a href='http://www.javascriptkit.com'><font size='2'>Stones</font></a></li>
<li onMouseover='dropdownmenu(this, event, menu3, '150px')' onMouseout='delayhidemenu()'><a href='http://www.cssdrive.com'><font size='2'>Ravsmykker</font></a></li>      <span style='position: relative; left: 20px'></span></li>
<li onMouseover='dropdownmenu(this, event, menu9, '150px')' onMouseout='delayhidemenu()'><a href='http://www.cssdrive.com'><font size='2'>Herresmykker</font></a></li>      <span style='position: relative; left: 20px'></span></li>
<li><a href='http://www.cssdrive.com'><font size='2'>Nyheder</font></a></li>
</ul>
</font></td>
        <td colspan='3' background='images/design-smykker_14.gif' width='458' height='1' alt=''></td>
        <td background='images/spacer.gif' width='1' height='1' alt=''></td>
    </tr>
    <tr>
        <td colspan='3' rowspan='4' background='images/design-smykker_15.gif' width='458' height='298' alt='' valign='top'>
                ";


                echo"<br><br>";
echo "<img src='billeder/".$data[billede]."'";
echo"<br><br>";
echo"Price: ".$data[pris]."$<br>";
echo"<i><a href=\"java script:popUp('sebil.php?billede=" . $data['billede'] . "', 1200, 1000);\">Se billedet i stor format</a><br></i><br>";
echo"<b>Læg varen i din indkøbskurv</b><br><br>";

echo"
</td>

                <td background='images/spacer.gif' width='1' height='175' alt=''></td>
    </tr>
    <tr>
        <td colspan='3' background='images/design-smykker_16.gif' width='149' height='17' alt=''></td>
        <td background='images/spacer.gif' width='1' height='17' alt=''></td>
    </tr>
    <tr>
        <td rowspan='2' background='images/design-smykker_17.gif' width='11' height='106' alt=''></td>
        <td background='images/design-smykker_18.gif' width='124' height='91' alt='' valign='top'><center><form action='$PHP_SELF'><font color='FFFFFF'>Nyhedsbrev</font><input type='text' style='width:100px;height:25px;' value='skriv e-mail' onFocus='this.value='''><br><input type='submit' name='mail' value='Send'></form></center></td>
        <td rowspan='2' background='images/design-smykker_19.gif' width='14' height='106' alt=''></td>
        <td background='images/spacer.gif' width='1' height='91' alt=''></td>
    </tr>
    <tr>
        <td background='images/design-smykker_20.gif' width='124' height='15' alt=''></td>
        <td background='images/spacer.gif' width='1' height='15' alt=''></td>
    </tr>
    <tr>
        <td colspan='4' background='images/design-smykker_21.gif' width='150' height='98' alt=''></td>
        <td colspan='3' background='images/design-smykker_22.gif' width='458' height='98' alt=''>
                                              ";

                while ($row = mysql_fetch_array($query)) {

echo " &nbsp;&nbsp;<a href='smykker3.php?visfra=$vis_fra&id=$row[id]&kategori=$row[kategori]&underkategori=$row[underkategori]'><img src='billeder/".$row[billede]."' height='75' width='100'></a>    ";
}

            echo"
        <td background='images/spacer.gif' width='1' height='98' alt=''></td>
    </tr>
    <tr>
        <td colspan='4' background='images/design-smykker_23.gif' width='150' height='38' alt=''></td>
        <td colspan='3' background='images/design-smykker_24.gif' width='458' height='38' alt=''></td>
        <td background='images/spacer.gif' width='1' height='38' alt=''></td>
    </tr>
    <tr>
        <td background='images/spacer.gif' width='56' height='1' alt=''></td>
        <td background='images/spacer.gif' width='1' height='1' alt=''></td>
        <td background='images/spacer.gif' width='11' height='1' alt=''></td>
        <td background='images/spacer.gif' width='124' height='1' alt=''></td>
        <td background='images/spacer.gif' width='14' height='1' alt=''></td>
        <td background='images/spacer.gif' width='1' height='1' alt=''></td>
        <td background='images/spacer.gif' width='109' height='1' alt=''></td>
        <td background='images/spacer.gif' width='45' height='1' alt=''></td>
        <td background='images/spacer.gif' width='304' height='1' alt=''></td>
        <td background='images/spacer.gif' width='135' height='1' alt=''></td>
        <td></td>

    </tr>

</table>

<!-- End ImageReady Slices -->
</body>
</html> ";
?>



Fejlen ligger her (tror jeg):


<ul class='navlist'>
<li><a href='http://www.javascriptkit.com'><font size='2'>Elegance</font></a> </li>
<li onMouseover='dropdownmenu(this, event, menu7, '150px')' onMouseout='delayhidemenu()'><a href='http://www.javascriptkit.com'><font size='2'>Geometrics</font></a> <span style='position: relative; left: 2px'></span></li>
<li><a href='http://www.javascriptkit.com'><font size='2'>Stones</font></a></li>
<li onMouseover='dropdownmenu(this, event, menu3, '150px')' onMouseout='delayhidemenu()'><a href='http://www.cssdrive.com'><font size='2'>Ravsmykker</font></a></li>      <span style='position: relative; left: 20px'></span></li>
<li onMouseover='dropdownmenu(this, event, menu9, '150px')' onMouseout='delayhidemenu()'><a href='http://www.cssdrive.com'><font size='2'>Herresmykker</font></a></li>      <span style='position: relative; left: 20px'></span></li>
<li><a href='http://www.cssdrive.com'><font size='2'>Nyheder</font></a></li>
</ul>
Avatar billede lesp Nybegynder
30. december 2007 - 21:35 #1
Jeg lukker. Fejlen lå hvor jeg sagde, og det skal se sådan ud:

<ul class="navlist">

<li><a href="http://www.javascriptkit.com"><font size="2">Elegance</font></a> </li>
<li onMouseover="dropdownmenu(this, event, menu7, '150px')" onMouseout="delayhidemenu()"><a href="http://www.javascriptkit.com"><font size="2">Geometrics</font></a> <span style="position: relative; left: 2px"></span></li>
<li><a href="http://www.javascriptkit.com"><font size="2">Stones</font></a></li>
<li onMouseover="dropdownmenu(this, event, menu3, '150px')" onMouseout="delayhidemenu()"><a href="http://www.cssdrive.com"><font size="2">Ravsmykker</font></a></li>      <span style="position: relative; left: 20px"></span></li>
<li onMouseover="dropdownmenu(this, event, menu9, '150px')" onMouseout="delayhidemenu()"><a href="http://www.cssdrive.com"><font size="2">Herresmykker</font></a></li>      <span style="position: relative; left: 20px"></span></li>
<li><a href="http://www.cssdrive.com"><font size="2">Nyheder</font></a></li>

</ul>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester