Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/06/2008, 01:03
Ruben_C
 
Fecha de Ingreso: febrero-2006
Mensajes: 217
Antigüedad: 18 años, 10 meses
Puntos: 0
funcion para cargar java con ajax

vuelvo a la carga con el tema porque no carga el js, jejeje. Pienso que este codigo podria ayudar a mucha gente si alguno de los expertos se da el tiempo de explicarnos por que no carga el codigo javascript pero si el css.

He probado muchos metodos pero no me resulta, dejo el codigo ajax que carga, y la pagina a cargar en el div y que contiene el script.

Código:
<script type="text/javascript">


var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname
var bustcacheparameter=""

function ajaxpage(url, containerid){
var page_request = false
if (window.XMLHttpRequest) // if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (e){}
}
}
else
return false
page_request.onreadystatechange=function(){
loadpage(page_request, containerid)
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null)
}

function loadpage(page_request, containerid){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText
}

function loadobjs(){ //esta funcion carga los archivos js y css (en teoria)
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}

</script>
y esta es la pagina:

Código HTML:
<script src="SpryAssets/SpryAccordion.js" type="text/javascript"></script>
<link href="SpryAssets/SpryAccordion.css" rel="stylesheet" type="text/css" />
</head>
<body>

<p>hola esto es una prueba </p>


<div id="Accordion1" class="Accordion" tabindex="0">
  <div class="AccordionPanel">
    <div class="AccordionPanelTab">Etiqueta 1</div>
    <div class="AccordionPanelContent">Contenido 1</div>
  </div>
  <div class="AccordionPanel">
    <div class="AccordionPanelTab">Etiqueta 2</div>
    <div class="AccordionPanelContent">Contenido 2</div>
  </div>
</div>
<script type="text/javascript">
<!--
var Accordion1 = new Spry.Widget.Accordion("Accordion1");
//-->
</script>
</body>
</html> 
Como dije antes, los archivos css se cargan perfecto, pero no los .js

Nota que muchos compartiran
- el howto de maborak no me funciono o no supe hacerlo funcionar.
- cargar los script en la pagina principal tampoco.
- ya fui a las faqs


Si alguien quiere simplemente ayudar a que funcione, yo y muchos otros mas estaremos agradecidos.

Última edición por Ruben_C; 05/06/2008 a las 12:14