2013-07-14 2 views
3

안녕하세요. 이것은 Brython에 대한 질문이며 모든 도움을 환영 할 것입니다.Brython : 움직이는 요소마다 [...] 마이크로 초

매 간격 (아마도 200 밀리 초) 동안 왼쪽 (또는 오른쪽, 상단 등)의 일부 픽셀 (예 : div)을 이동하는 방법을 찾고 있습니다. 누구든지 나를 도울 수 있습니까?

그리고 왼쪽 여백에 도착하면 요소를 삭제하는 것이 좋습니다. (:

[업데이트] 여기 출발점이다 내가 잘못 brython 코드를 polute 창의력을 따르지 않을 것이다.)

여기
<html><head> 
<style> 
* { margin: 0; padding: 0; outline: 0; border: 0; } 
.block { 
    display: inline-block; 
    margin: 1em; 
    padding: 1em; 
    background: steelblue; 
    color: white; 
    font: 14pt/1.2 georgia,cambria; 
    border-radius: .2em; 
} 
</style></head><body> 

<div class="block"> 
    Test 
</div> 

</body></html> 
+2

시작 지점을 알려주는 코드를 게시하십시오. – Liam

+1

''태그를 다시 구현하기 위해 표준 웹 스크립팅 언어가없는 대기를 기다리십시오. * 왜? * –

+0

Lego는 사용되지 않으므로 ... 또한 brython에서 배우고 싶습니다. @Liam, 나는 설명이있는 간단하고 실제적인 예제를 원했습니다. 원한다면 간단한 시작점으로 업데이트하겠습니다. –

답변

5

당신이 그것을 할 수있는 방법은 다음과 같습니다

<html> 
<head> 
<meta charset="utf-8"> 
<style> 
* { margin: 0; padding: 0; outline: 0; border: 0; } 
.block { 
    display: inline-block; 
    /*margin: 1em;*/ 
    padding: 1em; 
    background: steelblue; 
    color: white; 
    font: 14pt/1.2 georgia,cambria; 
    border-radius: .2em; 
} 
</style> 
<script src="/src/brython.js"></script> 
<script type="text/python"> 
import time 

elt = doc["moving"] 

def move(): 
    elt.style.left = "%spx" %(elt.left+10) 
    if(elt.left > 500): 
     time.clear_interval(timer) 
     del doc["moving"] 

timer = time.set_interval(move,200) 
</script> 
</head> 
<body onload="brython(1)"> 

<div class="block" id="moving" style="position:absolute;top:10;left:20;"> 
    Test 
</div> 

</body> 
</html> 

매우 간단합니다. 몇 가지 코멘트 :

  • div 요소는 위치에 설정해야합니다 = 절대은 Brython 프로그램에서

  • , 당신은 doc[object_id] (문서하여 객체에 대한 참조입니다 얻을 내장 된 이름 문서의 경우). 이 객체가 왼쪽 속성이 del doc[object_id]

  • : 객체 삭제하려면

  • set_intervalclear_interval있는 방법에 추가 문서 왼쪽 경계까지의 거리를 측정 정수를 내장 모듈 시간은 자바 스크립트와 동일한 문법을 ​​사용합니다.

+0

dude (: –

+2

2014 년 업데이트 : 지금은'import time' 대신'from browser import timer'를 사용하는 것이 좋습니다. (프로젝트의 방향은 python stdlib 라이브러리와 동일합니다) 그래서 brython의'set_interval' 와 "set_timeout"은 둘 다'browser.timer' 모듈에 있습니다 – jsbueno

관련 문제