Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/02/2009, 05:54
Avatar de korg1988
korg1988
 
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
Desacuerdo Ayuda por favor! No se porque sucede esto

Realmente no se que pasa, estoy usando una libreria de calendario llamada Epoch
La libreria funciona perfectamente en todos los lugares donde la he utilizado..

recientemento inicie un sitio nuevo y copie los archivos de libreria, realize la llamada a la misma y bueno todo lo que hago siempre!....

El tema es que en IE no funciona!!!!
Pero funciona en todos mis otros sitios, con el mismo archivo js!

O sea no he modificado nada, es mas , he copiado todo tal cual!.... y asi todo no funciona!... (sera que tengo que rechazar el trabajo y es un mensaje de parte de IE (DIOS DE LA WEB) que tengo que escuchar?)

Miren, tengo ese codigo

Código javascript:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title><?=$app['name'];?></title>
  5. <style type="text/css">
  6.     @import "css/datapickerstyles.css";
  7.     @import "css/general.css";
  8. </style>
  9. <script type="text/javascript" src="lib/js/core.js"></script>
  10. <script type="text/javascript" src="lib/js/misc.js"></script>
  11. <script type="text/javascript" src="lib/js/datapicker_class.js"></script>
  12. </head>
  13.  
  14. <body>
  15. <div id="panel">
  16.     <div id="top">
  17.         <div id="session_options">Sesi&oacute;n iniciada por <b><?=$_SESSION['usuario'];?></b>. (<a href="#">Modificar mis datos</a> - <a href="javascript:;" onClick="cerrarSesion();">Cerrar Sesi&oacute;n</a>)</div>
  18.     </div>
  19.     <div id="head">
  20.         <div id="app_name"><?=$app['name'];?></div>
  21.         <div id="menu_tags">
  22.             <ul>
  23. <?php
  24.  
  25. //*************************************
  26. //    MUESTRO LOS LINKS A LOS MODULOS
  27. //*************************************
  28.  
  29.     foreach( $modulos->read() as $modulo ) {
  30. ?>
  31.                 <li><a href="app.php?modulo=<?=$modulo;?>&token=<?=token::get();?>"><?=ucfirst(str_replace("-", " ", $modulo));?></a></li>
  32. <?php
  33.     }
  34. ?>
  35.             </ul>
  36.         </div>
  37.     </div>
  38.     <div id="center">
  39. <?php
  40. //CARGAR MODULO
  41. $modulos->load( $_GET['modulo'] );
  42. ?>
  43.     </div>
  44.     <div id="footer"><?=$app['name'];?> - Versi&oacute;n: <?=$app['version'];?> - &Uacute;ltima modificaci&oacute;n <?=$app['updated'];?><br />Desarrollado por <a target="_blank" href="<?=$app['creator_url'];?>"><?=$app['creator'];?></a></div>
  45. </div>
  46. </body>
  47. </html>

ahora bien, cuando cargo el modulo de alumnos que contiene la ejecucion del calendario no funciona...

El tema es que si borro todo el contenido del body, excepto el codigo php que carga el modulo el script funciona perfectamente...

El codigo de alumnos es el siguiente

Código html:
Ver original
  1. <table border="0" cellpadding="0" cellspacing="0">
  2. <tr>
  3.     <td align="left" valign="top">
  4.         <div class="ventana_grande">
  5.             <div class="titulo">Agregar/Modificar Alumno</div>
  6.             <form id="alu_form" action="" method="post">
  7.             <table class="table" border="0" cellpadding="0" cellspacing="0">
  8.                 <tr>
  9.                     <td>Nombre</td>
  10.                     <td><input type="text" id="alu_nom" /></td>
  11.                     <td>Apellido</td>
  12.                     <td><input type="text" id="alu_ape" /></td>
  13.                 </tr>
  14.                 <tr>
  15.                     <td>Documento</td>
  16.                     <td><input type="text" id="alu_doc" /></td>
  17.                     <td>Tipo de Documento</td>
  18.                     <td><input type="text" id="alu_id_doc_tipo" /></td>
  19.                 </tr>
  20.                 <tr>
  21.                     <td>Direcci&oacute;n</td>
  22.                     <td><input type="text" id="alu_dir" /></td>
  23.                     <td>Telefono</td>
  24.                     <td><input type="text" id="alu_tel" /></td>
  25.                 </tr>
  26.                 <tr>
  27.                     <td>Fecha de Nacimiento</td>
  28.                     <td><input type="text" id="alu_nac" name="alu_nac" readonly="readonly" /></td>
  29.                     <td>&nbsp;</td>
  30.                     <td>&nbsp;</td>
  31.                 </tr>
  32.                 <tr>
  33.                     <td colspan="4"><input type="submit" value="Guardar" /></td>
  34.                 </tr>
  35.             </table>
  36.             </form>
  37.         </div>
  38.         <div class="ventana_grande">
  39.             <div class="titulo">Alumnos</div>
  40.             <table width="100%" class="table" border="0" cellpadding="0" cellspacing="0">
  41.                 <tr>
  42.                     <td>Nombre</td>
  43.                     <td>Documento</td>
  44.                     <td>Borrar</td>
  45.                     <td>Gesti&oacute;n</td>
  46.                 </tr>
  47.                 <tr>
  48.                     <td>&nbsp;</td>
  49.                     <td>&nbsp;</td>
  50.                     <td>&nbsp;</td>
  51.                     <td>&nbsp;</td>
  52.                 </tr>
  53.             </table>
  54.         </div>
  55.     </td>
  56.     <td width="20" align="left">&nbsp;</td>
  57.     <td align="left" valign="top">&nbsp;</td>
  58. </tr>
  59. <script type="text/javascript">
  60. window.onload = function()
  61. {
  62.     datapicker = new Epoch('Fecha','popup',document.getElementById('alu_nac'), false);
  63. }

Ahora, no entiendo porque puede pasar esto, porque no veo errores html en el body!

El error que tira la clase esta en estas dos funciones

Código javascript:
Ver original
  1. Epoch.prototype.getTop = function (element) //PRIVATE: returns the absolute Top value of element, in pixels
  2. {
  3.     var oNode = element;
  4.     var iTop = 0;
  5.    
  6.     while(oNode.tagName != 'BODY') {
  7.         iTop += oNode.offsetTop;
  8.         oNode = oNode.offsetParent;
  9.     }
  10.     return iTop;
  11. };
  12. //-----------------------------------------------------------------------------
  13. Epoch.prototype.getLeft = function (element) //PRIVATE: returns the absolute Left value of element, in pixels
  14. {
  15.     var oNode = element;
  16.     var iLeft = 0;
  17.      
  18.     while(oNode.tagName != 'BODY') {
  19.         iLeft += oNode.offsetLeft;
  20.         oNode = oNode.offsetParent;
  21.     }
  22.    
  23.     return iLeft;
  24. };

Ahora bien, no entiendo porque cuando realiza ese bucle se saltea el body! (esta comprobacion la hice con un alert)

y se saltea siempre una o dos etiquetas ...

Quiero decir, si yo tengo un armado de este tipo

<html><body><div><table><tr><td></td></tr></table></div></body></html>
el bucle lee el TD, el TABLE y el HTML!

Bueno espero que me puedan dar una mano! porque me estoy volviendo loco hace dias que estoy con esto! y lo que mas me estresa es que en realidad no hay errores en javascript, porque hasta ahora ha funcionado en todos los navegadores de todos los sitios que he hecho de la misma forma que este !