Consiglio compatibilità tra script js postato il 16/08/2011 11:29:51 nel forum programmazione, gdrcd e open source
Ciao a tutti,
volevo chiedere un consiglio perchè ci sto uscendo di testa.
Ho creato una pagina divisa in vari div, all'interno di alcuni div vengono caricate ed aggiornate delle pagine php. Le aggiorno con questo scripg js inserito nell'head della pagina:
<script>
var auto_refresh = setInterval(
function(){
$('#presenti').load('presenti/presenti.php').
fadeIn("slow");
}, 10000);
</script>
in fondo alla pagina includo, invece, uno script che mi serve per inserire in maniera controllata alcune statistiche:
<script>
function $(id){
return document.getElementById(id);
}
function sottrai(chi, riserva, min, costo)
{
if ($(chi).value > min)
{
--$(chi).value;
$(riserva).value = parseInt($(riserva).value) + costo;
}
}
function somma(chi, riserva, max, costo)
{
if (($(riserva).value-costo) >= 0 && $(chi).value < max)
{
++$(chi).value;
$(riserva).value = parseInt($(riserva).value) - costo;
}
}
</script>
Il secondo script funziona tranquillamente in ogni caso, ma se lo includo nella pagina, non mi aggiorna più le pagine nei div.
Qualcuno saprebbe spiegarmi come mai?
Pagine → 1
16/08/2011 14:41:32
ilk primo script sembra una sintassi di jquery per cui credo che il problema sia derivato dall'uso del $ come prima funzione nel secondos cript che fa andar ein conflitot i due script.
16/08/2011 14:53:59 e modificato da darkside of breakfast il 16/08/2011 14:55:19
prima si dichiara la funzione e POI la si usa.
Quindi in questo caso prima dichiari function $(id) e poi la usi per aggiornare il div.
ps: ma se dichiari da solo la funzione $(id), fadeIn, load() etc chi le dichiara?
Se usi jquery allora non serve dichiarare $ (ora si chiama Jquery perchè $ dava conflitto) ma se non la usi allora devi dichiarare mooolte altre funzioni!
16/08/2011 15:17:10 e modificato da ally_333 il 16/08/2011 15:30:52
uhmm... ho tentato di eliminare dalla seconda funzione questa parte
function $(id){
return document.getElementById(id);
}
ma in questo modo si, i div me li aggiorna ma non funziona più lo script relativo agli input...come faccio a prendere l'id dell'input che vado a modificare?
praticamente
<input type="button" value="-" onclick="sottrai('Mente', 'disponibile', 5, 7);" />
<input id="Mente" name="Mente" value="0">
function $(id){
return document.getElementById(id);
}
questa parte della funzione mi prende l'id del primo input che poi uso per la funzione sottrai... come faccio a prenderlo in modo che non vada in conflitto con l'altro script?
16/08/2011 21:49:31
jquery ha una modalità per evitare conflitti con altr librerie che usano il $ come per esempio prototype o altro. basta attivare la modlaità noConflict() e usare JQuery aal posto di $ esempio direttamente dalla pagina di jquery:
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
I dati del generatore di rank sono stati aggiornati!