• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Name von dieser Function herausfinden?

LikeStar

New member
Ich möchte den Namen von diese Function wissen:

PHP:
$(".plugin-filter").click(function () {
        return !1
    });
    $(".plugin-filter-elements").mixitup({
        targetSelector: ".mix",
        filterSelector: ".plugin-filter",
        sortSelector: ".sort",
        buttonEvent: "click",
        effects: ["fade", "rotateY"],
        listEffects: null,
        easing: "smooth",
        layoutMode: "grid",
        targetDisplayGrid: "inline-block",
        targetDisplayList: "block",
        gridClass: "",
        listClass: "",
        transitionSpeed: 600,
        showOnLoad: "all",
        sortOnLoad: !1,
        multiFilter: !1,
        filterLogic: "or",
        resizeContainer: !0,
        minHeight: 0,
        failClass: "fail",
        perspectiveDistance: "3000",
        perspectiveOrigin: "50% 50%",
        animateGridList: !0,
        onMixLoad: null,
        onMixStart: null,
        onMixEnd: null
    });


ich möchte diesen nämlich seperat ausführen und zwar so:

PHP:
function Aendern1 () {
  document.all.meinAbsatz.innerHTML = Neu1;
  window.location.href = '#pages/portfolio/readmore.html';
  window.setTimeout(plugin-filter, 2000);
}
 
Code:
function Aendern1 () {
  document.all.meinAbsatz.innerHTML = Neu1;
  window.location.href = '#pages/portfolio/readmore.html';
  window.setTimeout(function()
  {
     $(".plugin-filter-elements").mixitup({
        targetSelector: ".mix",
        filterSelector: ".plugin-filter",
        sortSelector: ".sort",
        buttonEvent: "click",
        effects: ["fade", "rotateY"],
        listEffects: null,
        easing: "smooth",
        layoutMode: "grid",
        targetDisplayGrid: "inline-block",
        targetDisplayList: "block",
        gridClass: "",
        listClass: "",
        transitionSpeed: 600,
        showOnLoad: "all",
        sortOnLoad: !1,
        multiFilter: !1,
        filterLogic: "or",
        resizeContainer: !0,
        minHeight: 0,
        failClass: "fail",
        perspectiveDistance: "3000",
        perspectiveOrigin: "50% 50%",
        animateGridList: !0,
        onMixLoad: null,
        onMixStart: null,
        onMixEnd: null
    });
  }, 2000);
}
 
Zuletzt bearbeitet von einem Moderator:
Hey! Sehr nett von dir! :)

Hast evtl. einen Fehler eingebaut, damit ich selbst daraus lerne?
Ich frage nur...

das script funktioniert leider nur teilweise - plugin-filter leider eher nicht.
Hier ist der volle Code:

Code:
$(document).ready(function () {
    $(window).height();
    var b = $(window).width(),
        a = $("#navigation").outerHeight();
    $(window).resize(function () {
        b = $(window).width();
        $(window).height()
    });
    $(window).trigger("scroll");
    $("#navigation").fixedonlater({
        speedDown: 250,
        speedUp: 100
    });
    $(".centralized").centralized({
        delay: 1500,
        fadeSpeed: 500
    });
    $.fn.responsivevideos();
    $("#quote-slider").each(function () {
        $(".item", this).length && $(this).carousel({
            interval: 2E4
        })
    });
    $("#main-menu").onePageNav({
        currentClass: "active",
        changeHash: !1,
        scrollOffset: a - 10,
        scrollThreshold: 0.5,
        scrollSpeed: 750,
        filter: "",
        easing: "swing"
    });
    980 < b && ($("#page-welcome").parallax("0%", 0.2), $("#page-features").parallax("0%", 0.07), $("#page-twitter").parallax("0%", 0.1));
    "undefined" != typeof window.ontouchstart && $.each([".social-icons a", ".portfolio-items li", ".about-items .item"], function (b, a) {
        $(a).each(function (b, a) {
            $(a).bind("click", function (a) {
                $(this).hasClass("clickInNext") ? $(this).removeClass("clickInNext") : (a.preventDefault(), a.stopPropagation(), $(this).mouseover(),
                    $(this).addClass("clickInNext"))
            })
        })
    });
    $("#page-welcome .logo a").click(function () {
        $("html, body").animate({
            scrollTop: $($.attr(this, "href")).offset().top - a + 4
        }, 800);
        setTimeout(function () {
            $(window).trigger("scroll")
        }, 900);
        return !1
    });
    $("#welcome-messages ul").bxSlider({
        mode: "vertical",
        auto: !0,
        minSlides: 1,
        responsive: !0,
        touchEnabled: !0,
        pager: !1,
        controls: !1,
        useCSS: !1,
        pause: 1E4
    });
    $(".plugin-filter").click(function () {
        return !1
    });
    $(".plugin-filter-elements").mixitup({
        targetSelector: ".mix",
        filterSelector: ".plugin-filter",
        sortSelector: ".sort",
        buttonEvent: "click",
        effects: ["fade", "rotateY"],
        listEffects: null,
        easing: "smooth",
        layoutMode: "grid",
        targetDisplayGrid: "inline-block",
        targetDisplayList: "block",
        gridClass: "",
        listClass: "",
        transitionSpeed: 600,
        showOnLoad: "all",
        sortOnLoad: !1,
        multiFilter: !1,
        filterLogic: "or",
        resizeContainer: !0,
        minHeight: 0,
        failClass: "fail",
        perspectiveDistance: "3000",
        perspectiveOrigin: "50% 50%",
        animateGridList: !0,
        onMixLoad: null,
        onMixStart: null,
        onMixEnd: null
    });
    $("#twitterfeed-slider").tweet({
        modpath: "plugins/twitter/",
        username: "TheGridelicious",
        count: 3
    });
    $("#twitterfeed-slider").tweetCarousel({
        interval: 7E3,
        pause: "hover"
    })
});
$(document).ajaxSend(function () {
    0 == $(".loading").length && ($("body").append('<div class="loading"><div class="progress progress-striped active"><div class="bar"></div></div></div>'), $(".loading").slideDown(), $(".loading .progress .bar").delay(300).css("width", "100%"))
});
$(document).ajaxComplete(function () {
    $(".loading").delay(1E3).slideUp(500, function () {
        $(this).remove()
    });
    $(".close-portfolio span").click(function (b) {
        $(".portfolio-item-details").delay(500).slideUp(500, function () {
            $(this).remove()
        });
        window.location.hash = "!";
        return !1
    })
});


normalerweise wird das script über class="plugin-filter" ausgeführt.
Also zumindest wenn ich auf einen Link drücke.

HTML:
<a href="javascript:void(0)" onclick="Aendern1()" class="plugin-filter" data-filter="telemedien" >
 
Zuletzt bearbeitet von einem Moderator:
Hast evtl. einen Fehler eingebaut, damit ich selbst daraus lerne?
wenn es nicht geht, schreibe einfach, "es geht nicht!"

das script funktioniert leider nur teilweise - plugin-filter leider eher nicht.
keine ahnung, du wolltest etwas in einem timeout ausführen, das habe ich dir gezeigt. in deinem code war sonst nur noch die registrierung eines clickhandlers, den in einem timeout immer wieder zu registrieren ist sinnlos und falsch.

weisst du eigentlich was du genau machen willst?

normalerweise wird das script über class="plugin-filter" ausgeführt.
ein script wird nicht über eine Klasse ausgeführt.
das was ich bei dir unter "plugin-filter" finde, sind 2 sachen einmal die registrierung eines klickhandlers
Code:
 $(".plugin-filter").click(function () {
        return !1
    });
und einmal in dem mixitup-aufruf-argument die property filterSelector: ".plugin-filter"
wenn ich nach mixitup google, finde ich das
und vermute filterSelector ist das
womit hier oder hier ein klickhandler registriert wird.
damit wird, wenn du dann später auf dieses element klickst
HTML:
<a href="javascript:void(0)" onclick="Aendern1()" class="plugin-filter" data-filter="telemedien" >
in dieser funktion dieser teil durchlaufen.

was geht jetzt nicht? was soll wie gehen?
 
Wieso erstellst du zwei Threads?
Hab ich mich doch nicht verguckt. Aber es war gestern so viel, dass ich dem Eindruck nicht mehr nachgegangen bin.
Die Fragestellung scheint aber etwas anders zu sein, oder Julian? Sind dann zwei Threads nicht OK, auch wenn es der selbe Ausgangscode ist? Mir ist egal, ich kann die auch zusammenführen.
 
Wieso erstellst du zwei Threads? Das ist unnötig und bringt nur Verwirrung rein...
http://forum.jswelt.de/javascript/5...unde-ausf-hren-2-function-hintereinander.html

Hi,
für mich waren es eig. 2 verschiedene paar Schuhe. Es ging hier eher um das Rausfinden eines Namens.
Und bei dem Anderen war ich auf das "sleep()" oder wait() fixiert.

Ich hoffe das geht noch in Ordnung. Wenn nicht, bitte fixen. Besten Dank.

Edit:

@hesst

wenn es nicht geht, schreibe einfach, "es geht nicht!"


keine ahnung, du wolltest etwas in einem timeout ausführen, das habe ich dir gezeigt. in deinem code war sonst nur noch die registrierung eines clickhandlers, den in einem timeout immer wieder zu registrieren ist sinnlos und falsch.

weisst du eigentlich was du genau machen willst?


ein script wird nicht über eine Klasse ausgeführt.
das was ich bei dir unter "plugin-filter" finde, sind 2 sachen einmal die registrierung eines klickhandlers
Code:
 $(".plugin-filter").click(function () {
        return !1
    });
und einmal in dem mixitup-aufruf-argument die property filterSelector: ".plugin-filter"
wenn ich nach mixitup google, finde ich das
und vermute filterSelector ist das
womit hier oder hier ein klickhandler registriert wird.
damit wird, wenn du dann später auf dieses element klickst
HTML:
<a href="javascript:void(0)" onclick="Aendern1()" class="plugin-filter" data-filter="telemedien" >
in dieser funktion dieser teil durchlaufen.

was geht jetzt nicht? was soll wie gehen?

Besten Dank für deine Rückmeldung! :)

Ich bin dir sehr dankbar dafür. Und glaube mir, ich suche fieberhaft den Fehler. Ich dachte nur, weil viele beim Helfen dann noch
absichtlich einen Fehler einbauen, damit der Nutzer dann natürlich auch selbst daraus lernt. Ich hoffe du fühlst dich nicht
angegriffen.

Um deine Frage zu beantworten. Nein es funktioniert nicht. Aber ich finde theoretisch müsste es ja reibungslos funktionieren.
Du hast ja alles richtig gesagt.

Also wenn ich deinen Code nutze, entferne ich die Klassefizierung plugin-filter.
Das schaut dann so aus.
HTML:
<a href="javascript:void(0)" onclick="Aendern1()"  data-filter="telemedien" >



LG
 
Zuletzt bearbeitet:
Aber ich finde theoretisch müsste es ja reibungslos funktionieren.
nein, ich habe versucht dir zu erklären warum:
$(".plugin-filter-elements").mixitup registriert an deinem link einen internen eventhandler - zusätzlich zu deinem.
wann welcher aufgerufen wird, liegt nicht in deiner hand.
aber es gibt das event mixStart. wenn du dich da ranhängst, wird deine aktion vor der des plugins ausgeführt.
einer verzögerung von 1 sekunde bekommst du aber auch damit nicht hin
 
nein, ich habe versucht dir zu erklären warum:
$(".plugin-filter-elements").mixitup registriert an deinem link einen internen eventhandler - zusätzlich zu deinem.
wann welcher aufgerufen wird, liegt nicht in deiner hand.
aber es gibt das event mixStart. wenn du dich da ranhängst, wird deine aktion vor der des plugins ausgeführt.
einer verzögerung von 1 sekunde bekommst du aber auch damit nicht hin

Dann ist die Verzögerung unwichtig.

Als Erstes soll
HTML:
window.location.href = '#pages/portfolio/readmore.html';

und anschließend erst dann nach dem der Ladebalken auf 100 % steht, erfolgt der plugin-filter.
 
welcher ladebalken? ladebalken hört sich asynchron an, dann wird das wieder nichts.


PHP:
$(document).ajaxSend(function () {
    0 == $(".loading").length && ($("body").append('<div class="loading"><div class="progress progress-striped active"><div class="bar"></div></div></div>'), $(".loading").slideDown(), $(".loading .progress .bar").delay(300).css("width", "100%"))
});
$(document).ajaxComplete(function () {
    $(".loading").delay(1E3).slideUp(500, function () {
        $(this).remove()
    });
    $(".close-portfolio span").click(function (b) {
        $(".portfolio-item-details").delay(500).slideUp(500, function () {
            $(this).remove()
        });
        window.location.hash = "!";
        return !1
    })
});

in dem obigen Code ...

:))))

Edit:

Wobei dein Code an sich, in Ordnung war.
Das mit dem Ladebalken ist nicht zwingend notwendig.

LG
 
Zuletzt bearbeitet:
in dem obigen Code ...
kannst du nicht irgendwann mal beschreiben, was du eigentlich machen willst?
also nochmal, deine aktion, die vor dem mixdingens laufen soll, arbeitet die asynchron? oder was macht diese? wie sieht die aus? bisher steht da nur return !1;. was steht da eigentlich?

Wobei dein Code an sich, in Ordnung war.
Das mit dem Ladebalken ist nicht zwingend notwendig.
und was soll dass bedeuten?
 
Danke für deine Rückmeldung.
Ich habe hier ein Bootstrap Template erworben.

Treble - One Page Responsive Theme - Gridelicious.net

Wenn du nach unten Scrollst -> Portfolio.
Kannst du unter den Projekt Bildern eine Schaltfläche erkennen "SHOW MORE".

Klickt man drauf, erscheinen weitere Bilder bzw. wird eine HTML Seite miteingebunden.

Jetzt will ich es aber so, dass sobald ich auf eines der Unterlinks drücke, wie z.B. Typography,
dass zu erst, der SHOW MORE Button ausgeführt wird und anschließend dann das Plugin-filter.

Ich könnte es ja mit einem Bild ja vllt. verdeutlichen. Wäre das hilfreicher?
 
Klickt man drauf, erscheinen weitere Bilder bzw. wird eine HTML Seite miteingebunden.
heißt jetzt was? etwas wird mit ajax geladen und ist mit klasse plugin-filter-elements versehen?
dann kannst du im ajax-callback vermutlich einfach filter aufrufen, wenn du es mit eventdelegation konfiguriert hast.

probleme könntest du aber bekommen, wenn du dabei auch alte elemente mit klasse plugin-filter-elements aus dem dom entfernst. da sollte man um memoryleaks zu vermeiden im callback lieber erst destroy rufen und dann das mixdingens neu aufbauen
 
heißt jetzt was? etwas wird mit ajax geladen und ist mit klasse plugin-filter-elements versehen?
dann kannst du im ajax-callback vermutlich einfach filter aufrufen, wenn du es mit eventdelegation konfiguriert hast.

probleme könntest du aber bekommen, wenn du dabei auch alte elemente mit klasse plugin-filter-elements aus dem dom entfernst. da sollte man um memoryleaks zu vermeiden im callback lieber erst destroy rufen und dann das mixdingens neu aufbauen

:)

Sorry, ich verstehe einfach nichts.

Ich weiß nur, dass die Links eine class="plugin-filter" haben. Klingt man auf eines der Unterlinks wie "typography", werden die Projekt bilder
gefiltert. Des Weiteren werden die Bilder zurecht verschoben.

Gleichzeitig gibt es aber unten einen SHOW MORE button. Klickt man auf diesen, werden weitere Bilder geladen.

Klickt man allerdings NICHT auf den Show MOre Button, fehlen die weitere Bilder, und sobald man auf Typography klickt, wird zwar das
plugin-filter script (Projekt Bilder werden verschoben und gefilter) ausgeführt, aber es fehlen die "weiteren Bilder" vom Show More Button.

Ich hoffe du verstehst mein Anliegen =/
 
Gibt es eine Funktion, die einen Link einfach so ausführt?
Link wird dann mittels id oder class lokalisiert.
Du brauchst da keine ID... Entweder rufst du das jeweilige Verweisziel direkt mit window.location.href auf, oder du führst die onclick-Funktion einfach mit einem Aufruf in JS aus.

PS: Es handelt sich hier nicht um PHP-Code -> Bitte
Code:
-Tags verwenden![/color]
 
Zuletzt bearbeitet:
$( "#foo" ).trigger( "click" );
$( "#foo" ).click();
aber das ist 1. murks und wird 2. nicht funktionieren, da das nachladen doch sicher asynchron erfolgt.
aber ich glaube verstanden zu haben, wie es laufen soll.
du hast 2 links. einer startet das mixdingens, und ein anderer lädt elemente, die das mixdingens filtert nach.
du willst, jetzt aber das mixdingens immer auf die nachgeladenen elemente loslassen.
dann musst du bei dem link, der jetzt das mixdingens startet deine sachen nachladen. diese funktion hat sicher ein callback, welches aufgerufen wird, wenn das nachladen beendet ist. dort rufst du dann filter am mixdingens auf. dem mixdingens gibst du dann kein element(selektor auf nichtexistierendes element) mit, an dem es seinen clickhandler registriert
 
Zurück
Oben