2011-06-21 43 views
0

我想寫一個JavaScript代碼,當特定事件發生時將改變矩形的值。我正在考慮沿着document.getElementById("xxx").setAttribute ..但我完全卡住了。任何幫助將不勝感激!JavaScript代碼來改變屬性

我的HTML代碼是這樣的。

var x = document.getElementById(「some integer」)。value;

<div id="xxx" style="position: absolute; left: 500px; top: 520px; width: 220px; height: 10px; clip: rect(0pt, 10px, 10px, 0pt); background-color: rgb(0, 0, 255);"> 

我想在rect中設置第二個值,即(10px)到xpx。

+0

你想要做什麼標籤/屬性? – Thew

+0

因此,例如,它目前是矩形(10px,10px,10px,10px),我想將其更改爲矩形(10px,Zx,10px,10px),其中z是整數 – Paul

+0

我現在明白了。你想改變一個元素的* CSS屬性*。這與屬性不同。例如。 'style'或'id'是屬性。 –

回答

0

這是我的一個suggesion ..

document.getElementById("xxx").setAttribute('onclick', function() {document.getElementById("xxx").style.clip="rect(0px 75px 75px 0px)"; }); 

或試試這個...

document.getElementById("xxx").style.clip="rect(0px 75px 75px 0px)"; 
+0

如果我有z = 100,我想設置該值。我這樣做:document.getElementById(「xxx」)。style.clip =「rect(0px」+ Z +「px」+「75px 0px)」? – Paul

+0

@保羅:你試過了嗎? –

+0

如果我有z = 100,我想將值設置爲該值。我這樣做:document.getElementById(「xxx」)。style.clip =「rect(0px」+ Z +「px」+「75px 0px)」? – Paul

1

document.getElementById("xxx").style.clip = "rect(10px, 10px, 10px, 10px)";應該這樣做。

clip屬性是一個CSS屬性,因此您需要使用DOM元素的style屬性來設置它。

0

你可以嘗試這樣的事情,這樣你可以改變任何/所有的剪輯設置:

function changeClipTo(t,r,b,l,elementID) { 

var clipString = "rect(" + t + "px " + r + "px " + b + "px " + l + "px)"; 
document.getElementById(elementID).style.clip = clipString; 

} 

這樣,你可以有任何click事件提供您所需的值如onclick =「changeClipTo(0,50,10,0,」一些元件');」或href =「javascript:changeClipTo(0,50,10,0,'someElement');」

如果您事先不知道這些尺寸,那麼您可以使用onclick/href調用一個函數來確定您需要的值,然後從該函數調用changeClipTo(),將計算的值傳遞給S)。