Consente di suddividerlo in pezzi, vero?
function presize($obj, w, h)
{
Accetta un oggetto jQuery ($ obj) con una larghezza e un'altezza di ridimensionamento. Come faccio a sapere che richiede un oggetto jQuery? Le funzioni width()
e height()
non sono native per gli elementi dom.
var nw = $obj.width(),
nh = $obj.height();
Crea due nuove variabili corrispondenti alla larghezza e all'altezza attuali dell'oggetto.
if ((nw > w) && w > 0) {
nw = w;
nh = (w / $obj.width()) * $obj.height();
}
Se la larghezza corrente dell'oggetto è maggiore della larghezza di ridimensionamento (e assumendo che la larghezza di ridimensionamento abbia un valore significativo), nw
viene riassegnato per ridimensionare la larghezza w
, e nh
è assegnato a un'altezza proporzionale alla larghezza ridimensiona ( w / $obj.width()
sarebbe la proporzione della nuova larghezza rispetto alla vecchia larghezza. Se fossero uguali, sarebbe 1 e quindi non l'altezza della probabilità.
if ((nh > h) && h > 0) {
nh = h;
nw = (h / $obj.height()) * $obj.width();
}
Fai lo stesso per l'altezza, assumendo che la nuova altezza sia maggiore dell'altezza di ridimensionamento h
e l'altezza superata sia un valore significativo.
xscale = $obj.width() / nw;
yscale = $obj.height() / nh;
Crea o assegna variabili globali xscale
e yscale
a inverso di proporzioni appena create. In altre parole, se hai dimezzato larghezza e altezza, xscale sarebbe 200% e yscale sarebbe 200%. Questo è probabile per sapere come invertire l'operazione in seguito, anche se è solo speculativo.
Questo è un effetto collaterale della funzione, e questa è generalmente una cattiva pratica dal momento che può essere guardata troppo facilmente, tuttavia mentirei se affermassi di non aver mai avuto bisogno di fare qualcosa di simile. Chiamami pigro.
$obj.width(nw).height(nh);
Tentativo di assegnare la nuova larghezza e altezza dell'oggetto alla larghezza e all'altezza calcolate. Se questa fosse un'immagine, probabilmente funzionerebbe bene, tuttavia, questo non significa che la larghezza e l'altezza risultanti siano la larghezza e l'altezza calcolate.
}
Spero che questo aiuti.