Tip Precoz: obtener valor numérico con JavaScript

Con jQuery constantemente necesitamos crear variables para tomar valores CSS de elementos, para luego construir nuevos elementos o interacciones; constantemente lo hago en plugins cono Timelinr o Blox!, pero JavaScript nos ofrece un método más rápido que el andar haciendo slices.

Desde el siguiente ejemplo, tomaremos la el valor CSS de margin-top del buscador de este mismo sitio; normalmente lo haríamos de esta manera:

var marginT = $('#search_container').css('margin-top');

Click para ver ejemplo 1

Ejemplo1: obtener valor numérico con JavaScript

El valor entregado efectivamente es el correcto: 10px pero lo necesitamos numérico. Para ello utilizamos replace():

var marginT = $('#search_container').css('margin-top').replace('px','');

Click para ver ejemplo 2

Ejemplo2: obtener valor numérico con JavaScript

Sobre el Autor: Jorge Epuñan

Soy quien escribe en este sitio: diseñador gráfico de profesión, desarrollador web por preferencia y amante de la interacción humano-computador. Cuando no pienso en web, salgo a trotar por mis barrios en Santiago, Chile o me junto con amigos a un bar a conversar sobre nuevas tendencias y tecnologías. Twitter profesional y personal, además del Contacto.

Relacionados

Mootools: introducción

A pedido popular, comenzaré a iniciar a quienes visitan este sitio en algunos de los frameworks Javascript más populares, o por lo menos, que utilizo con más frecuencia. El primero de ellos sería Mootools, con el que más he estado jugando últimamente (y prometo mostrar resultados). Pero antes, me interesa comenzar con definir framework. Según [...]

Alcanzar el primer hijo de un selector pero no su descendencia

Alcanzar el primer hijo de un selector pero no su descendencia

Problema: a través de CSS, necesitaba entregar estilos al primer hijo de un elemento sin afectar la herencia (nietos y más allá); sólo necesito darle estilo al hijo directo de un selector. Además: debiera ser genérico, sin restringirse al tipo de selector hijo que exista. Pueden ser <li>, <p>, <span>, etc. Y por último: que [...]

IE v/s console

¿Cansado de soportar IE? Te entiendo, pero aún hay clientes que piden que sus proyectos se vean en estos browsers antiguos. Frustraciones aparte, cuando escribes Javascript y usas console.log() para debuggear tu código en la consola del browser, es usual que éstas funcionalidades se quiebren en IE8-. console.log(‘IE8- dará error por esto’); Solución 1 window.console [...]

  1. Más rápido para el navegador y resistente a errores: $marginR = parseInt($(‘.search-form’).css(‘margin-right’))

    Ayoze
    11 / Abril / 2012

  2. Igualmente se puede conseguir con :
    $marginR = parseInt($(‘.search-form’).css(‘margin-right’));

    Norke
    12 / Abril / 2012

  3. No tan precoz:

    (function($) {
    $.fn.margin = function(side) {
    var _me, _margins;
    _me = $(this);
    _margins = {
    “left”:parseInt(_me.css(‘margin-left’)),
    “right”:parseInt(_me.css(‘margin-right’)),
    “top”:parseInt(_me.css(‘margin-top’)),
    “bottom”:parseInt(_me.css(‘margin-bottom’))
    };
    return _margins[side];
    };
    })(jQuery);

    $marginR = $(‘.search-form’).margin(‘right’);

    Norke
    12 / Abril / 2012

  4. (function($) {
    $.fn.margin = function(side) {
    return parseInt($(this).css(‘margin-’+side));
    };
    })(jQuery);

    $marginR = $(‘.search-form’).margin(‘right’);

    Sergio
    17 / Abril / 2012

OJO: si vas a agregar código fuente, asegúrate de convertirlas antes a entidades HTML, sino el comentario no se renderizará correctamente.

compartido 2 veces
Cargando