Domanda

Ho un sacco di codice che è più necessario caricare prima dell'altro codice per funzionare correttamente. Affinché io possa raggiungere questo obiettivo, ho più script più e più volte. C'è un modo per pulire un po 'di questo? Proverò a dare esempi:

//This needs to load first to add class
<script>
$(function(){
if (typeof(global_Current_ProductCode) !="undefined")
    {
        if ($('#pt494').length == 0 )
            {   $('font[class="text colors_text"]:eq(0)').closest('table').addClass('thePrices'); }    
    } 
});
</script>

//This needs to load 2nd because it has to add the class first before it does this
<script>
$(function(){
if (typeof(global_Current_ProductCode) !="undefined")
    {
        if ($('#pt490').length == 0 )
            {   $('table[class="thePrices"]:eq(0)').closest('table').before($('font[class="productnamecolorLARGE colors_productname"]:eq(0)').addClass('toptitle'));}
    } 
});
</script>

C'è molto più codice simile a questo, deve esserci un modo per lanciare tutto sotto la stessa affermazione If?

È stato utile?

Soluzione

Non sono sicuro di aver capito la tua domanda. I blocchi di codice scritti in sequenza non vengono eseguiti contemporaneamente. Quindi, potresti consolidare il tuo codice in questo modo:

<script>
$(function(){
if (typeof(global_Current_ProductCode) !="undefined")
    {
        if ($('#pt494').length == 0 )
        {   
            $('font[class="text colors_text"]:eq(0)').closest('table').addClass('thePrices'); 
        }   
        if ($('#pt490').length == 0) {
            $('table[class="thePrices"]:eq(0)').closest('table').before($('font[class="productnamecolorLARGE colors_productname"]:eq(0)').addClass('toptitle'));
        } 
    } 
});
</script>

Altri suggerimenti

A parte la progettazione del tuo framework non c'è molto che puoi fare oltre a provare a scrivere codice più pulito in futuro. Nella mia esperienza generalmente consolido tutte le cose di iniezione HTML in un'unica funzione e lo chiamo prima di ogni altra cosa.

Puoi anche separare le funzioni a $ (documento) .ready () e $ (finestra) .load. Il carico della finestra avverrà dopo il documento pronto, ma questo non è assolutamente una soluzione End All per il codice disordinato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top