jQuery Italia - Forum » Reception

Comando e which

(7 articoli)
  1. antares2k
    Membro

    Salve su un codice di un libro ho visto dopo la scritta function (e) e dopo un altro comando which. Sapete per favore chiarirmi le idee cosa fanno di specifico queste due cose?
    Grazie ancora a tutti

    Pubblicato 12 months fa #
  2. jqueryitalia
    Amministratore

    Ciao.

    Se postassi il codice in manierra completa forse sarebbe più semplice aiutarti ;-)

    Pubblicato 11 months fa #
  3. antares2k
    Membro

    Questa è la funzione dove compare E e anche WHICH

    galleria.direction = function(e,which) {
    var x = e.pageX - which.offset().left;
    galleria.scroll = (x >= galleria.width / 2) ? ">" : "<";
    }

    Ciao e grazie

    Pubblicato 11 months fa #
  4. jqueryitalia
    Amministratore

    Credo che il pezzo di codice da te postato sia parte di questa funzione:

    $(document).ready(function() {
    gallery.trigger = $("#trigger");
    gallery.content = $("#photos_inner");
    gallery.scroll = false;
    gallery.width = 350;
    gallery.innerWidth = gallery.content.width();
    gallery.timer = false;

    gallery.init();

    });

    gallery = {};

    gallery.offset = function() {
    var left = gallery.content.position().left;
    if (gallery.scroll == '>') {
    if (left < 0) {
    left += gallery.width;
    }
    } else {
    if (left <= 0 && left >= ((gallery.innerWidth * -1) + (gallery.width * 2))) {
    left -= gallery.width;
    }
    }
    return left + "px";
    }

    gallery.slide = function() {
    if (gallery.timer) {
    clearTimeout(gallery.timer);
    }
    if (gallery.scroll) {
    $(gallery.content)
    .stop(true,true)
    .animate({left: gallery.offset()}, 500);
    gallery.timer = setTimeout(gallery.slide, 1000);
    }
    }

    gallery.direction = function(e,which) {
    var x = e.pageX - which.offset().left;
    gallery.scroll = (x >= gallery.width / 2) ? ">" : "<";
    }

    gallery.init = function() {
    $(gallery.trigger)
    .mouseout(function() {alert("hit mouseout")})
    .click(function() {alert("you clikced")})
    .mouseout(function() {gallery.scroll = false;})
    .mousemove(function(e) {gallery.direction(e,gallery.trigger);})
    .mouseover(function(e) {
    gallery.direction(e,gallery.trigger);
    gallery.slide()
    });
    }

    Quindi 'e' e 'which' sono i due parametri della funzione: in questo caso
    - e è l'stanza dell'evento
    - which è dove viene applicata l'azione (in questo caso l'oggetto con id trigger).

    Pubblicato 11 months fa #
  5. antares2k
    Membro

    Bravo ma non volevo postare il codice del libro sul quale sto studiando. Ma dettagliattamente cosa vuol dire istanza dell'evento? Io di eventi conosco click, mousemove ecc.. ma <b>e</b> come istanza dell'evento no. E which è dove viene applicata l'azione (in questo caso l'oggetto con id trigger). Scusami ma sono un po nucco non capisco bene queste due cose. Se mi fai un banale esempio forse capisco la cosa complessa.

    Pubblicato 11 months fa #
  6. jqueryitalia
    Amministratore

    Direi che ti sei quasi risposto da solo... :-P

    'e' in questo caso istanza la procedura (o la funzione) da eseguire al mousemove. Se guardi il codice infatti:

    .mousemove(function(e) {gallery.direction(e,gallery.trigger);})

    Quindi il mousemove istanzia la funzione gallery.direction a cui vengono passati l'istanza stessa e l'oggetto.

    Spero di essere stato abbastanza chiaro ;-)

    Pubblicato 11 months fa #
  7. antares2k
    Membro

    Grazie del tuo aiuto prezioso, ma non mi è chiara la riga var x = e.pageX - which.offset().left; non capisco quel which è un riferimento alla gallery?
    Se mi dai un un input te ne sono riconoscente è da poco che sto leggendo il libro e sono un po' arruginito avevo impararato un po' AS2.
    Se mi puoi postare un esempio banale per capire tutte e due sarei contento.
    Grazie ancora

    Pubblicato 11 months fa #

RSS feed for this topic

Replica

Devi aver fatto il login per poter pubblicare articoli.