[JavaScript & Ajax] Eseguire script dopo chiamata A

  • Creatore Discussione Creatore Discussione tiinho
  • Data di inizio Data di inizio

tiinho

Nuovo Utente
30 Mag 2015
3
0
1
Ciao, io uso questo codice per sostituire il main della mia mia index con in contenuto di un altra pagina.
var cartip=document.createElement("div") //Dynamically create tooltip element
cartip.setAttribute("id", "cartooltip")
document.body.appendChild(cartip)
var cartooltipobj=document.getElementById("cartooltip")
var rightcolumnobj=document.getElementById("rightcolumn")

function ietruebody(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}

document.getElementById("rightcolumn").onmouseover=function(){ //show tooltip
var titletext=document.getElementById("cartitle")? document.getElementById("cartitle").innerHTML : "DD Forums Archive"
cartooltipobj.innerHTML=titletext
cartooltipobj.style.left=rightcolumnobj.offsetLeft+rightcolumnobj.offsetWidth-180+"px"
cartooltipobj.style.top=rightcolumnobj.offsetTop+rightcolumnobj.offsetHeight-40+"px"
cartooltipobj.style.visibility="visible"
}

document.getElementById("rightcolumn").onmouseout=function(){ //hide tooltip
document.getElementById("cartooltip").style.visibility="hidden"
}
Più questo:

<script type="text/javascript">
var loadedobjects=""
var rootdomain="http://"+window.location.hostname

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)
}
page_request.open('GET', url, 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(){
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments
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>

Ho notato che quando vado a caricare una pagina tramite la funzione ajax, all'interno di essa non mi funziona nessun tipo di javascript ad esempio il apri e chiudi di un div. Tengo a precisare che la pagina che carico tramite ajax ha solo html, lo scipt è presente nella pagina principale dove viene caricata, ha giusto la classe dello script che dovrebbe eseguire.

Grazie

Come posso implementare qualcosa che mi legga lo script? Non mastico molto di ajax.
 
Ciao, se le funzioni sono nella pagina chiamante devono funzionare, ti faccio un esempio
pagina chiamante
HTML:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function () {
        $.get("paginachiamata.html", function (response) {
            $("#risultato").html(response);
        });
    });
    function saluta() {
        alert("ciao");
    }
</script>    
<div id="risultato">

</div>
pagina chiamata
HTML:
<input type="button" value="SALUTA" onclick="saluta()"/>
non viene invece eseguito il codice tra i tag <script>
 
io ho una funzione per lo slider. nella home l'unica funzione tra tag <script> $(document).ready(function() {
$('#smart-gallery').gallery({ stickthumbnails: true, random: true});
});</script> è questa.

La devo mettere nella mia page load?? 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
$("#zoom").imageLens();
}

dove ho anche la funzione per lo zoom?? se si come

grazie per la risposta
 

Discussioni simili