2013-10-01 55 views
1

我得到JQuery的一個CSS值,對於特定元素的背景位置,-66px -65px改變的背景位置值與jQuery或JavaScript

我想獲得第二個值("-65px")並更改到'170px'與jQuery; 如何subString,並取代現在的價值?

+0

添加一個新的風格的元素,或者只是替換字符串中的這個數字? – adeneo

+0

您可以將字符串拆分爲「」(空格字符),訪問拆分數組的索引[1]並對其進行更改,然後再次使用空格字符連接數組。 'var thevalues = yourposition.split(「」); thevalues [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

我想你應該嘗試使用'background-position'css屬性。這會讓你的生活變得更簡單。

這裏是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]);