Подтвердить что ты не робот

Функция Left() в Javascript или jQuery

Мне просто нужен очень удобный способ извлечения чисел из строки в Javascript, и я думаю об использовании jQuery, но я предпочитаю метод, который оказывается самым простым. Я запросил атрибут "left" блока css с помощью jQuery следующим образом:

var stuff = $('#block').css("left")

Результатом "материала" является

1008px

Я просто хочу избавиться от "px", потому что мне нужно сделать parseInt. Каков наилучший метод? Если Javascript имел функцию left(), это было бы очень просто. Благодаря

4b9b3361

Ответ 1

Просто выполните parseInt("1008px", 10), он будет игнорировать "px" для вас.

Ответ 2

Чтобы ответить на другой вопрос, вы можете добавить функцию left() к встроенному встроенному классу String prototype JavaScript, чтобы все остальные строки наследовали его:

String.prototype.left = function(n) {
    return this.substring(0, n);
}

И как только вы включите это, вы можете сказать:

var num = "1008px".left(4);

Я добавляю помощники, такие как trim и capitalize в базовый файл JavaScript для таких вещей.

Ответ 3

$('# block'). offset(). left содержит фактическое значение левой позиции как целое число.

Ответ 4

parseInt(stuff);

Ответ 5

Left() здесь почти не используется, так как вам сначала нужно вычислить смещение. Однако вы могли бы использовать регулярное выражение, чтобы либо вывести номер, либо удалить недопустимые символы:

var value = "1080px";
var num = value.replace(/[^\d]+/g, '');
// or
var num = value.replace(/\D+/g, '');
// or
var num = value.match(/\d+/)[0];

То есть, если parseInt() вам недостаточно...:)

Ответ 6

Если вы хотите иметь это число без 'px', попробуйте:

$('#block').position().left

Это было бы проще в JQuery)