0

안녕하세요, 저는 Prototype을 사용하여 간단한 사용자 친화적 인 CSS 편집기를 만들고 있습니다. 어쨌든, 배경 위치 x/y 값을 스스로 얻을 수 있는지 궁금합니다.프로토 타입을 사용하여 백그라운드 이미지의 x 또는 y 위치를 얻는 방법은 무엇입니까?

은 내가 이런 일을 할 수 있으면 좋겠다하지만 슬프게도 작동하지 않습니다 : element.getStyle('background-position-x);

나는 위치가 '중심'보다는 일반적인 것 같은 다른 형태로 제공하기 때문이다 같아요.

답변

1

이봐, 이거 꽤 잘 된 것 같았 어. 위치가 '중심 중심'으로 설정된 경우에도 프로토 타입이 백분율로 변환됩니다! 매우 편리!

var temp = $('header').getStyle('background-position'); 
var split = temp.split(" "); 
$('header_horizontal_position').value = split[0]; 
$('header_vertical_position').value = split[1]; 

어쨌든 도움 주셔서 감사합니다.

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<style type="text/css"> 
<!-- 
body { 
    background-image: url(00.jpg); 
    background-repeat: no-repeat; 
    background-position: top left; 
} 
--> 
</style> 
<script type="text/javascript"> 
function getStyle(obj,att){ 
for(var i=0;i<att.length;i++){ 
if(window.getComputedStyle){ 
obj[att[i]]=window.getComputedStyle(obj,null)[att[i]]; 
} 
else if(obj.currentStyle){ 
obj[att[i]]=obj.currentStyle[att[i]]; 
} 
} 
} 

onload=function(){ 
var obj = document.getElementsByTagName('body')[0]; 
var att=['backgroundImage','backgroundRepeat','backgroundPosition'] 
getStyle(obj,att) 
for(var i=0;i<att.length;i++) {alert(obj[att[i]])} 
} 
</script> 
</head> 
<body> 

</body> 
</html> 
관련 문제