2011-06-21 45 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)。