11521 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Je débute en jquery et n'arrive pas à trouver la solution à mon problème (et pourtant j'ai essayé pas mal de chose) Smiley bawling
J'ai un menu ou il y a 2 onglets, pour arriver sur la même page mais en fonction de celui sur lequel je clique, ca devrait activer une tab ou l'autre.

Voila le dernier bout de code :

    function changeToMyAdd(e) {
        var prim = "btn-primary",
            def = "btn-default";
        $(".btn-pref #my_adds").removeClass(def).addClass(prim);
        $(".btn-pref #identity").removeClass(prim).addClass(def);
        $(".tab-content #tab1").removeClass("active");
        $(".tab-content #tab3").addClass("active");
    };
    $(document).ready(function(){
        $("#myaddsMenu").on("click",changeToMyAdd);
    });



Merci d'avance pour votre aide
Bonjour,
Jquery permet d'analyser l'URL et d'en extraire les composants,
donc en ayant deux liens différents de la forme :

<a href="cible.html?origine=menu1">page cible</a> 
<a href="...">autre lien</a>
<a href="...">autre lien</a>
<a href="cible.html?origine=menu2">page cible</a> 

Dans la page cible.html, on récupère la valeur passée en paramètre avec cette fonction:

$.urlParam = function(name){
    var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(window.location.href);
    if (results==null){
       return null;
    }
    else{
       return results[1] || 0;
    }
}

ici 3exemples d'utilisation : en alerte javascript, dans la console et dans une <div id="origine">...</div> :

console.log($.urlParam('origine')); 
alert($.urlParam('origine')); 
$('#origine').html($.urlParam('origine'));


Modifié par farang (18 Jan 2017 - 15:02)
Merci,
C'était bien la solution de regarder l'adresse Url !
Voila ce que j'ai fait :

HTML :

<li><a href="{% url 'profile' %}">{% trans "My profile" %}</a></li>
<li><a href="{% url 'profile' %}#myadd">{% trans "My adds" %}</a></li>


JS :


    if (window.location.hash == "#myadd") {
        $("#profile_container").ready(function(){
            $(".btn-pref #my_adds").removeClass(def).addClass(prim);
            $(".btn-pref #identity").removeClass(prim).addClass(def);
            $(".tab-content #tab1").removeClass("active");
            $(".tab-content #tab3").addClass("active");
        });
    };