2013-10-01 3 views
1

я получаю значение Css с JQuery, относительно фона позиции определенного элемента, -66px -65pxизменить значение фона позиции с JQuery или JavaScript

Я хочу получить второе значение ("-65px") и изменить что '170px' с JQuery; Как подстроить это значение и заменить теперь значение?

+0

Добавить новый стиль к элементу, или просто заменить это число в строку? – adeneo

+0

вы можете разбить строку на символ "" (символ пробела), получить доступ к индексу [1] разделенного массива и изменить его, а затем снова присоединить массив с символом пробела. 'var thevalues ​​= yourposition.split (" "); значения [1] = «170px»; $ (element) .css ("background-position", thevalues.join ("")) ' – devnull69

+0

просто измените номер – Radian

ответ

0

по вашему делу

// replace body selector with your element selector 
var bgPos = $('body').css('backgroundPosition'); 
$('body').css('backgroundPosition', bgPos.replace('-65px', '170px')); 
0

с JQuery вы можете сделать что-то вроде этого ...

$('#elementid').css('background-position-x', newValueX); 
    $('#elementid').css('background-position-y', newValueY); 

также вы можете получить значения

$('#elementid').css('background-position-x'); 
    $('#elementid').css('background-position-y'); 
+0

Обратите внимание, что это не перекрестный браузер и не является частью спецификаций CSS. – adeneo

+0

«background-position-x», «background-position-Y» не в стандарте w3c – Radian

0

Я думаю, вы должны попробовать для использования свойства css 'background-position'. Это сделало бы вашу жизнь немного проще.

вот fiddle

var bg = $('#some_el').css('background-position'); 
var values = bg.split(" "); 
var X = values[0].split("px")[0]; 
var Y = values[1].split('px')[0]); 
Смежные вопросы