Please i need some help with js

Please support our JavaScript / DHTML / AJAX advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
Reply

Join Date: Jul 2005
Posts: 3
Reputation: DivX is an unknown quantity at this point 
Solved Threads: 0
DivX DivX is offline Offline
Newbie Poster

Please i need some help with js

 
0
  #1
Jul 20th, 2005
this is what i got:

function roll(id,h){
//menu = document.getElementById(id);
cont+=1;
document.getElementById(id).style.height = cont;
t=setTimeout("roll('"+id+"',"+h+")",100);
if (cont > h){
cont=1;
stop();
}
}

this should resize a layer's height like an animated dropdown menu ... but it simply won't assign the new height.tryied also:

function roll(id,h){
menu = document.getElementById(id);
cont+=1;
menu.style.height = cont;
t=setTimeout("roll('"+id+"',"+h+")",100);
if (cont > h){
cont=1;
stop();
}
}


stop does nothing but:
function stop(){
if (running){
running=false;
clearTimeout(t);
};
}

stops the timeout.what is the problem?
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 20
Reputation: Eddie Traversa is an unknown quantity at this point 
Solved Threads: 0
Eddie Traversa Eddie Traversa is offline Offline
Newbie Poster

Re: Please i need some help with js

 
0
  #2
Jul 21st, 2005
This works for me in IE and Moz...

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <html>
  3. <head>
  4. <title>Grow Layer Animation</title>
  5. <script type="text/javascript">
  6. function animateLayers(id,size) {
  7. el = document.getElementById(id).style;
  8. var h_size1 = parseInt(el.height);
  9. if(h_size1 < size) {
  10. el.height = h_size1+2+"px";
  11. setTimeout("animateLayers('" + id + "','" + size + "')", 1);
  12. }
  13. }
  14. </script>
  15. </head>
  16. <body onload="animateLayers('Layer1','500')">
  17. <div id="Layer1" style="position:absolute; width:33px; height:23px; z-index:1; left: 256px; top: 0px; background-color: #996600;"></div>
  18. </body>
  19. </html>


Eddie Traversa

DHTML Nirvana
http://dhtmlnirvana.com/

Spiritual Blog
http://www.truthrealization.com/
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 20
Reputation: Eddie Traversa is an unknown quantity at this point 
Solved Threads: 0
Eddie Traversa Eddie Traversa is offline Offline
Newbie Poster

Re: Please i need some help with js

 
0
  #3
Jul 21st, 2005
You could also use offsetHeight instead of parseInt like so;

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title>Grow Layer Animation</title>
  5. <script type="text/javascript">
  6. function animateHeight(id,size) {
  7. el = document.getElementById(id);
  8. var h_size1 =el.offsetHeight;
  9. if(h_size1 < size) {
  10. el.style.height = h_size1+2+"px";
  11. setTimeout("animateHeight('" + id + "','" + size + "')", 1);
  12. }
  13. }
  14. </script>
  15. </head>
  16. <body onload="animateHeight('Layer1','500')">
  17. <div id="Layer1" style="position:absolute; width:33px; height:23px; z-index:1; left: 256px; top: 80px; background-color: #996600;"></div>
  18. </body>
  19. </html>


Eddie Traversa

DHTML Nirvana
http://dhtmlnirvana.com/

Spiritual Blog
http://www.truthrealization.com/index.php
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 3
Reputation: DivX is an unknown quantity at this point 
Solved Threads: 0
DivX DivX is offline Offline
Newbie Poster

Re: Please i need some help with js

 
0
  #4
Jul 21st, 2005
still won't work.
i think the problem is that my div contains severeal ancors:
here's one of the layers that won't work:

#submenu1{
filter:alpha(opacity=80,style=0);
position:absolute;
top:20;
left:20;
border: 1px solid black;
width: 120px;
background-color: #003466;
visibility : hidden;
z-index:1;

}

#submenu1 a{
font: bold 10px Verdana;
padding: 2px;
padding-left: 4px;
display: block;
width: 100%;
color: #FFFFFF;
text-decoration: none;
}

html>body #submenu1 a{
width: auto;
}

#submenu1 a:hover{
background-color: #5AB227;
color: white;
}

inside html:
<div id="submenu1">
<a href="http://www.mywebsite.com" >Profilul Companiei</a>
<a href="http://www.mywebsite.com">Scurt istoric</a>
<a href="http://www.mywebsite.com/">Showroom</a>
<a href="http://www.mywebsite.com">Politica noastra</a>
<a href="http://www.mywebsite.com">Despre Adeserv</a>
</div>

and the function onmouseover looks like this:


function showmenu(obj,id){
var menu = document.getElementById(id);
if(menu.style.visibility == 'hidden'){
if(id=="submenu5"){
menu.style.top = document.body.topMargin + obj.offsetTop+90;
menu.style.left = document.body.leftMargin + obj.offsetLeft+460;
}else{
removeall();
menu.style.top = getAbsY(obj)+obj.offsetHeight;
menu.style.left = document.body.leftMargin + obj.offsetLeft;
//alert(menu.offsetHeight);
}
menu.style.visibility = 'visible';
start(id,menu.offsetTop);
}

this shows the popup menu layer near a <td> object ...
but the browser won't allow me to change the height ..not even in the showmenu function...
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 20
Reputation: Eddie Traversa is an unknown quantity at this point 
Solved Threads: 0
Eddie Traversa Eddie Traversa is offline Offline
Newbie Poster

Re: Please i need some help with js

 
0
  #5
Jul 21st, 2005
Post a page somewhere so I can see the whole code.

I can see one problem in the script

if(id=="submenu5"){

It doesnt look like your defining the id attribute so try something like this..

if(menu.id=="submenu5"){

Eddie Traversa

DHTML Nirvana
http://dhtmlnirvana.com/

Spiritual Blog

http://www.truthrealization.com/
Reply With Quote Quick reply to this message  
Join Date: Jul 2005
Posts: 3
Reputation: DivX is an unknown quantity at this point 
Solved Threads: 0
DivX DivX is offline Offline
Newbie Poster

Re: Please i need some help with js

 
0
  #6
Jul 21st, 2005
the submenu5 is for a special submenu layer... it must appear as a submenu and that's why i had to put it in an if clause...
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Other Threads in the JavaScript / DHTML / AJAX Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC