Как вы можете найти Y-смещение фонового изображения с помощью JavaScript? - PullRequest
3 голосов
/ 20 апреля 2011

Полагаю, довольно прямо.Получить фоновую позицию легко, но просто получить Y-позицию немного сложнее.Должен ли я разделить вывод положения фона?Или есть более чистый способ получения значения?

РЕДАКТИРОВАТЬ: я смог получить это, javascript-версию ответа Damien-at-SF, но по какой-то причине yResult возвращает '(пустая строка)'когда я делаю console.log () для него. Я не думаю, что это на самом деле захват значения.Что я делаю не так?

var yResult = document.getElementById('sub-image1').style.backgroundPosition;
var a = yResult.split(" ");
var y = parseFloat(a[1]);

Ответы [ 2 ]

0 голосов
/ 20 апреля 2011

Вы можете использовать jQuery для широкой поддержки браузера:

//returns y position of background image
$("#example").css("background-position").split(' ')[1]

Рабочий пример здесь: http://jsfiddle.net/QagqS/

Этот пример предупреждает позицию y фонового изображения:)

ОБНОВЛЕНИЕ БЕЗ JQUERY:

Для стандартного javascript (http://jsfiddle.net/QagqS/3/) вам необходимо определить встроенный CSS в элементе:

<div id="example" style="background-position:10px 100px"></div>

Это позволяет javascript подобрать стиль элемента, и поэтому вы можете использовать метод

document.getElementById('example').style.backgroundPosition.split(' ')[1]

, опубликованный выше ...

0 голосов
/ 20 апреля 2011

Вы можете использовать <element>.style.backgroundPositionY, но я не уверен, насколько широко это поддерживается.

...