Mentre lavoravo su un cursore dell'intervallo dell'interfaccia utente di jQuery, eseguivo principalmente il debug in chrome. Avevo bisogno di fare la gamma hanno un limite quindi vorrei prendere la posizione sinistra di una delle maniglie in questo modo:jQuery differenze di posizionamento tra Chrome (webkit) e Firefox
$el.css('left');
Il che mi avrebbe dato la posizione di sinistra in percentuale: 84%
. Tuttavia, quando ho provato in Firefox, restituiva il valore in pixel.
Qualcuno ha provato questo prima? Basandosi sull'osservazione del DOM in Firebug, Firefox riconosce il posizionamento a sinistra basato sulla percentuale, ma non sembra che lo restituisca come valore. Questo comportamento predefinito è per Firefox? È lo stesso anche in IE?
Buona domanda. Recentemente sono stato sorpreso di trovare i pixel di ritorno css ('left') in Firefox quando la proprietà è stata specificata come percentuale (o ems). Dopo tutto, puoi sempre ottenere il valore del pixel usando position(). Non l'ho verificato in Chrome, però. – harpo
Ya, sono rimasto sorpreso quando uno degli elementi si è appena sparato dallo schermo quando ho pensato che sostanzialmente avessi finito con quella funzionalità. Lavorare su un MBP senza VMWare o simili, quindi non è possibile testare realmente per IE in questo momento. – hellatan
Questo non risponde alla tua domanda, ma una soluzione alternativa basata su jQuery è usare 'position' (http://api.jquery.com/position/), che restituisce lo stesso valore (in pixel) su ogni browser. – Emmett