2014-09-09 5 views
1
<!DOCTYPE html> 
<html> 
<head> 
<style> 
img 
{ 
position:absolute; 
top:50px; 
} 
</style> 
</head> 
<body> 

<img id="myImg" src="w3javascript.gif" width="100" height="132"> 
<button type="button" onclick="clipImage()">Clip image</button> 
<button type="button" onclick="clearClip()">Unclip image</button> 

<script> 
var a="50" 
var b=30 
var c=a-b 

function clipImage() 
{ 
document.getElementById("myImg").style.clip="rect(c+'px' 75px 75px 0px)"; 
} 
function clearClip() 
{ 
document.getElementById("myImg").style.clip="auto"; 
} 
</script> 

</body> 
</html> 

КСТАТИ Я просто взял этот код из W3Schools :) Извините за не специфичны в названии вопроса, но я хотел бы знать, почему я не могу использовать переменные, которые я создал внутри clip:rect. Спасибо за ответJavascript ссылка переменные в клипе:. Прямоугольник не работает

ответ

2

Ваших кавычек выключены:

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

нормально thanks.but Кстати, почему мне нужно поставить два + знаки ?? – user3806102

+0

Потому что 'c' является переменной. Вы не можете просто вставить его в строку и надеяться, что это сработает. Вам нужно разбить строку, используя конкатенацию, как я сделал в своем ответе. – Andy

+0

Большое вам спасибо: DDDDDDDDDDDDDDDD – user3806102