Question

J'ai beaucoup de code qui a le plus besoin d'être chargé AVANT l'autre morceau de code pour qu'il fonctionne correctement.Pour y parvenir, j'ai plusieurs scripts encore et encore.Y a-t-il un moyen de nettoyer une partie de cela?Je vais essayer de donner des exemples:

//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>

Il y a tellement plus de code similaire à celui-ci, il doit y avoir un moyen de tout jeter sous la même instruction IF?

Était-ce utile?

La solution

Je ne suis pas sûr de comprendre votre question.Les blocs de code écrits en séquence ne sont pas exécutés simultanément.Ainsi, vous pouvez consolider votre code comme ceci:

<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>

Autres conseils

À part la conception de votre propre framework, vous ne pouvez pas faire grand chose à part essayer d'écrire du code plus propre à l'avenir.D'après mon expérience, je consolide généralement tous les éléments d'injection html en une seule fonction et je l'appelle avant toute autre chose.

Vous pouvez également séparer les fonctions en $ (document) .ready () et $ (window) .load.Le chargement de la fenêtre se produira une fois le document prêt, mais ce n'est certainement pas une solution complète pour le code désordonné.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top