Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Warstwy w Operze i Mozilli nie działaja w IE owszem dlaczego?
Forum PHP.pl > Forum > Przedszkole
poli25
Witam sciągnąłem z internetu kod który mnie interesował troche go przerobiłem ale niestety warstwy nie dałają w innych przegladarkach niz IE nie wiem czemu ;(
oto gotowy kod:

<html>
<head>
<title>JavaScript Unleashed</title>
<style type="text/css">
<!--
#layer1{
background-color: green;
height: 150;
left: 100;
position: absolute;
top: 10;
width: 100;
}
#layer2{
background-color: blue;
height: 150;
left: 100;
position: absolute;
top: 10;
width: 100;
}

-->
</style>
<script type="text/javascript" language="JavaScript1.2">
<!--
// Create global variables for browser type
var layer = new String();
var style = new String();

// Determine if the browser is Internet Explorer, Navigator,
// or other. Also, set the layer variable depending on the
// type of access it needs.
function checkBrowser(){
if(navigator.userAgent.indexOf("MSIE") != -1){
layer = ".all";
style = ".style";
}else if(navigator.userAgent.indexOf("Nav") != -1){
layer = ".layers";
style = "";
}

}

// Take the state passed in, and change it.
function changeState(layerRef, state){
eval("document" + layer + "['" + layerRef + "']" + style +
".visibility = '" + state + "'");
}
//-->
</script>
</head>

<body onload="checkBrowser()">
<div name="layer1" id="layer1" onMouseOut="changeState('layer1','hidden'),changeState('layer2','hidden')">
DIV 1
</div>

<div name="layer2" id="layer2" onMouseOut="changeState('layer2','hidden'),changeState('layer1','hidden')">
DIV 2
</div>

<table><tr>
<td>
<form name="form1">
<input type="button" value="Div1"Image from book
onMouseOver="changeState('layer1','visible'),changeState('layer2','hidden')",
onMouseOut="changeState('layer2','hidden')">
</form></td></tr></table>
<table><tr><td>
<form name="form2">
<input type="button" value="Div2"Image from book
onMouseOver="changeState('layer2','visible'),changeState('layer1','hidden')",
onMouseOut="changeState('layer1','hidden')">

<form></td></tr></table>


</body>
</html>

Prosze o podpowiedzi może ktoś miał podobny problem. Dziękuję i pozdrawiam.
andrzej_
Wydaje mi się, że może chodzić o to smile.gif.

  1. // Determine if the browser is Internet Explorer, Navigator,
  2. // or other. Also, set the layer variable depending on the
  3. // type of access it needs.
  4. function checkBrowser(){
  5. if(navigator.userAgent.indexOf("MSIE") != -1){
  6. layer = ".all";
  7. style = ".style";
  8. }else if(navigator.userAgent.indexOf("Nav") != -1){
  9. layer = ".layers";
  10. style = "";
  11. }
poli25
zmieniłem
layer = ".layers";
style = "";
na
layer = ".layers";
style = ".style";
ale nie pomaga ;(
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.