janneman1234
Gebruiker
- Lid geworden
- 25 mrt 2009
- Berichten
- 5
Beste helpmij leden,
Ik de volgende externe java script code op mijn website staan, deze is van het beweegbare menu:
Deze genereerd de volgende error:
Dit javascript menu code is afkomstig van een website waar onder andere menu's te vinden zijn:
http://www.dynamicdrive.com/dynamicindex1/slashdot.htm
Na het veranderen van de tekst en URLs gaf dit menu de bovenstaande error, die te zien is op alle pagina's van mijn website. (het webdomain staat in de screenshot)
Zelf heb maar heel weinig kennis van javascript.
Ik hoop dat iemand dit kan oplossen, alvast bedankt.
(ps. nog meer info nodig laat het weten)
Update: Het externe javascript voor het menu, is hetzelfde als die op dynamicdrive.com staat, alleen ik heb de snelheid naar 6 verhoogt in plaats van 5.
Op de website van dynamicdrive.com waar dit menu vandaan komt word geen error gegenereed.
Zelf denk ik dat het iets te maken kan hebben met submenu''s ofzo, maar zeker ben ik hier niet van, blijft moeilijk dat javascript.
Hebben jullie suggesties dan hoor ik het wel.
Ik de volgende externe java script code op mijn website staan, deze is van het beweegbare menu:
PHP:
function SDMenu(id) {
if (!document.getElementById || !document.getElementsByTagName)
return false;
this.menu = document.getElementById(id);
this.submenus = this.menu.getElementsByTagName("div");
this.remember = true;
this.speed = 6;
this.markCurrent = true;
this.oneSmOnly = false;
}
SDMenu.prototype.init = function() {
var mainInstance = this;
for (var i = 0; i < this.submenus.length; i++)
this.submenus[i].getElementsByTagName("span")[0].onclick = function() {
mainInstance.toggleMenu(this.parentNode);
};
if (this.markCurrent) {
var links = this.menu.getElementsByTagName("a");
for (var i = 0; i < links.length; i++)
if (links[i].href == document.location.href) {
links[i].className = "current";
break;
}
}
if (this.remember) {
var regex = new RegExp("sdmenu_" + encodeURIComponent(this.menu.id) + "=([01]+)");
var match = regex.exec(document.cookie);
if (match) {
var states = match[1].split("");
for (var i = 0; i < states.length; i++)
this.submenus[i].className = (states[i] == 0 ? "collapsed" : "");
}
}
};
SDMenu.prototype.toggleMenu = function(submenu) {
if (submenu.className == "collapsed")
this.expandMenu(submenu);
else
this.collapseMenu(submenu);
};
SDMenu.prototype.expandMenu = function(submenu) {
var fullHeight = submenu.getElementsByTagName("span")[0].offsetHeight;
var links = submenu.getElementsByTagName("a");
for (var i = 0; i < links.length; i++)
fullHeight += links[i].offsetHeight;
var moveBy = Math.round(this.speed * links.length);
var mainInstance = this;
var intId = setInterval(function() {
var curHeight = submenu.offsetHeight;
var newHeight = curHeight + moveBy;
if (newHeight < fullHeight)
submenu.style.height = newHeight + "px";
else {
clearInterval(intId);
submenu.style.height = "";
submenu.className = "";
mainInstance.memorize();
}
}, 30);
this.collapseOthers(submenu);
};
SDMenu.prototype.collapseMenu = function(submenu) {
var minHeight = submenu.getElementsByTagName("span")[0].offsetHeight;
var moveBy = Math.round(this.speed * submenu.getElementsByTagName("a").length);
var mainInstance = this;
var intId = setInterval(function() {
var curHeight = submenu.offsetHeight;
var newHeight = curHeight - moveBy;
if (newHeight > minHeight)
submenu.style.height = newHeight + "px";
else {
clearInterval(intId);
submenu.style.height = "";
submenu.className = "collapsed";
mainInstance.memorize();
}
}, 30);
};
SDMenu.prototype.collapseOthers = function(submenu) {
if (this.oneSmOnly) {
for (var i = 0; i < this.submenus.length; i++)
if (this.submenus[i] != submenu && this.submenus[i].className != "collapsed")
this.collapseMenu(this.submenus[i]);
}
};
SDMenu.prototype.expandAll = function() {
var oldOneSmOnly = this.oneSmOnly;
this.oneSmOnly = false;
for (var i = 0; i < this.submenus.length; i++)
if (this.submenus[i].className == "collapsed")
this.expandMenu(this.submenus[i]);
this.oneSmOnly = oldOneSmOnly;
};
SDMenu.prototype.collapseAll = function() {
for (var i = 0; i < this.submenus.length; i++)
if (this.submenus[i].className != "collapsed")
this.collapseMenu(this.submenus[i]);
};
SDMenu.prototype.memorize = function() {
if (this.remember) {
var states = new Array();
for (var i = 0; i < this.submenus.length; i++)
states.push(this.submenus[i].className == "collapsed" ? 0 : 1);
var d = new Date();
d.setTime(d.getTime() + (30 * 24 * 60 * 60 * 1000));
document.cookie = "sdmenu_" + encodeURIComponent(this.menu.id) + "=" + states.join("") + "; expires=" + d.toGMTString() + "; path=/";
}
};
Deze genereerd de volgende error:
Dit javascript menu code is afkomstig van een website waar onder andere menu's te vinden zijn:
http://www.dynamicdrive.com/dynamicindex1/slashdot.htm
Na het veranderen van de tekst en URLs gaf dit menu de bovenstaande error, die te zien is op alle pagina's van mijn website. (het webdomain staat in de screenshot)
Zelf heb maar heel weinig kennis van javascript.
Ik hoop dat iemand dit kan oplossen, alvast bedankt.
(ps. nog meer info nodig laat het weten)
Update: Het externe javascript voor het menu, is hetzelfde als die op dynamicdrive.com staat, alleen ik heb de snelheid naar 6 verhoogt in plaats van 5.
Op de website van dynamicdrive.com waar dit menu vandaan komt word geen error gegenereed.
Zelf denk ik dat het iets te maken kan hebben met submenu''s ofzo, maar zeker ben ik hier niet van, blijft moeilijk dat javascript.
Hebben jullie suggesties dan hoor ik het wel.
Laatst bewerkt: