hallo,
ich versuche grade fuer meine webseite einen sliding div zu erstellen, wobei die position (ausgefahren, eingefahren) in einem cookie gespeichtert wird.
In firefox laueft auch alles wie es soll, nur IE (version 6)macht probleme.
im internet explorer 6 kommt die fehlermeldung>
------------------------------------------
line 61,
char:9
error: "obj" is undefined.
------------------------------------------
function slideRight(){
if (obj){
if(parseInt(obj.style.left) < 0){
obj.style.left = parseInt(obj.style.left) + 10 + "px";
setTimeout("slideRight()",50);
}
}
}
------------------------------------------
die folge ist dass der slide im IE nicht mehr funktioniert..
wenn ich bei if(obj) im code 'obj' mit dem namen des div ersetze,(weil ich mir nicht besser zu helfen weiss) funktioniert es im internet explorer richtig, aber nicht mehr in firefox.
es ist eine pattsituation...
kann mir jemand helfen wie man das 'obj' definiert damit es in firefox und IE richtig laueft?
danke!
hier ist mein Quellcode:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Title Goes Here</title>
<body onload="javascript:checkCookie('open')">
<script type="text/javascript">
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}
function checkCookie(name) {
var x = readCookie(name)
if (x == 'false') {obj = document.getElementById("boxDiv");
obj.style.left = "-130px";
} else if (x == 'true') {
obj = document.getElementById("boxDiv");
obj.style.left = "0px";
}
}
function slideRight(){
if (obj){
if(parseInt(obj.style.left) < 0){
obj.style.left = parseInt(obj.style.left) + 10 + "px";
setTimeout("slideRight()",50);
}
}
}
function slideLeft(){
if (obj){
if(parseInt(obj.style.left) > -130){
obj.style.left = parseInt(obj.style.left) - 10 + "px";
setTimeout("slideLeft()",50);
}
}
}
</script>
<style type="text/css">
#boxDiv {
position: absolute;
left: -130px;
top: 0px;
z-index: 1000;
width: 130px;
height: 180px;
background: #eaeaea;
opacity: 0.80;
filter: alpha(opacity=80);
}
p {
text-align: right;
}
</style>
</head>
<body>
<p>This is my web page</p>
<br>
<p>onclick: <a href="#" onclick="slideRight(); createCookie('open','true',0) ">slideRight</a> | <a href="#" onclick="slideLeft(); createCookie
('open','false',0)">slideLeft</a></p>
<div id="boxDiv">dies ist die Testbox</div>
</body>
</html>