JQuery Toggle Step manuell aufrufen

SonMiko

Erfahrenes Mitglied
Hallo zusammen,

kann ich eine 2. durch .toggle() definierte Funktion auch von Hand aufrufen?
Problem ist dass ich bei einem Element mit einem Toggle Arbeite welches zwei Funktionen beinhaltet. Nun gibt es ein weiteres element welches den Toggle Prozess des ersten Elements auch beeinflussen soll.

Beispiel:
Code:
$(".search").toggle(function(){
        $(this).stop('true','true');
        $(this).animate({
            'width':'250',
            'backgroundColor':'#2084c4'
        },300,function(evt){
            $(this).html('<input type="text" class="search_input" value="Suchbegriff"/>');
            $(".search_input").fadeIn(500).focus();
        });
    },
    function(){
        $(this).stop('true','true');
        $(".search_input").fadeOut(500).remove();
        $(this).animate({
            'width':'48',
            'backgroundColor':'#2084C4'
        },300);
    });

Frage:
Wie kann ich nun den Toggleprozess von woanders als dem Ursprungselement (.search) aufrufen so dass die nächste Funktion wieder aufgerufen wird?
Ist es auch möglich gezielt die erste oder zweite Funktion aufzurufen?
Ein einfaches $('.anderesElement').click($('.search').toggle()); hat leider nicht geklappt...

Viele Grüße,

Mike
 
Okay ich habe soeben ".trigger()" entdeckt womit ich ein Event von Hand auslösen kann.
Somit ist Frage 1. beantwortet.
Ich vermute dass ich nich einfach eine Funktion in Toggle direkt ansteuern kann - einmal mehr nachgedacht macht das keinen Sinn... Ich denke also das Thema ist erledigt.
Ein Beispiel zu Trigger:
Code:
$("body").click(function(evt){
        $(".search").trigger('click');
    })
 

Neue Beiträge

Zurück