Js fonctionnel mais qui fait beuger les autres js

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Js fonctionnel mais qui fait beuger les autres js

Message par demeter1 le Ven 20 Fév 2015 - 15:24

Détails techniques


Version du forum : phpBB2
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Opera
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : http://altitudetropicale.forums-actifs.com/index.forum

Description du problème

Bonjour à tous,
Voici un js qui fait office de sélecteur de thème. Il fonctionne à merveille sauf sur un détail; dés que je le place sur toutes les pages, il désactive tous les autres js qui sont cochés sur le même emplacement.
Il doit s'agir d'une petite erreur dans la constitution du code mais je n'arrive pas à en détecter la source.

Code:
/*Selecteur de theme  */
$(function() {
    function e(e) {
        "0" != e && "-1" != e ? $.ajax({
            url: e,
            dataType: "text",
            success: function(e) {
                $('head style[skin="newCSS"]').length ? $('head style[skin="newCSS"]').html(e) : $("head").append('<style skin="newCSS">' + e + "</style>")
            }
        }) : $('head style[skin="newCSS"]').remove()
    }
    var t = [],
        o = !0,
        m = "http://FORO.foroactivo.com/h10-my-css3";
    if (t["Thème complet vert"] = "/h23-theme-complet-vert", t["Thème complet  chocolat"] = "/h24-theme-complet-chocolat", t["Thème complet lotus"] = "/h26-theme-lotus", t["Thème complet orchid"] = "/h27-theme-complet-orchid", t["Thème complet steampunk palm"] = "/h28-theme-complet-steampunk-palm", t["Thème complet parchemin"] = "/h29-theme-complet-parchemin", t["Thème complet jungle monkey"] = "/h36-theme-complet-jungle-monkey", t["Thème complet lierre"] = "/h38-theme-complet-lierre", t["Thème complet Stapelia cuir"] = "/h40-theme-complet-stapelia-cuir", t["thème complet floraria Hydra"] = "/h42-theme-complet-floraria-hydra", 1 == o) {
        var l = '<option value="-1">Choisir le thème</option><option value="0">Thème de base</option>';
        for (i in t) l += '<option value="' + t[i] + '">' + i.replace("_", " ") + "</option>";
        if ($("#selecteur").append('<div id="selecteur"><select name="chageSkin">' + l + "</select></div>"), my_getcookie("fa_skin")) {
            var c = my_getcookie("fa_skin");
            $('select[name="chageSkin"]').length && $('select[name="chageSkin"] option[value="' + my_getcookie("fa_skin") + '"]').attr("selected", !0), e(c)
        }
        $("select[name='chageSkin']").change(function() {
            var t = $(this).find("option:selected").attr("value");
            e(t), my_setcookie("fa_skin", t, 1)
        })
    } else e(m), my_setcookie("fa_skin", m, 1)
})();

Merci à ceux qui se pencheront sur cette demande d'aide.


Dernière édition par demeter1 le Ven 20 Fév 2015 - 21:54, édité 1 fois

demeter1
+ Hyperactif +

Masculin
Messages : 8098
Inscrit(e) le : 23/01/2009

http://altitudetropicale.forums-actifs.com/index.forum
demeter1 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Js fonctionnel mais qui fait beuger les autres js

Message par Ea le Ven 20 Fév 2015 - 21:00

bonjour,


la seule erreur que je vois c'est de faire :

Code:
$(function(){ /* ... */ })();

cela c'est l'équivalent de :

Code:
$(document).read(function(){ /* */ })();

et $(document).read(function(){ /* */ }) retourne un sorte de tableau avec l'élément document.

or le () essaye d'exécuter ce tableau comme si c'était une fonction, ce que n'est pas possible.

Cordialement.

Ea
Aidactif
Aidactif

Messages : 23417
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Js fonctionnel mais qui fait beuger les autres js

Message par demeter1 le Ven 20 Fév 2015 - 21:53

Merci Ea. Yes Le script est fonctionnel grâce à vous.
Bonne soirée?

demeter1
+ Hyperactif +

Masculin
Messages : 8098
Inscrit(e) le : 23/01/2009

http://altitudetropicale.forums-actifs.com/index.forum
demeter1 a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum