jquery animate가 ie8에서 느려지는 이유가 뭘까요. > 자유게시판

자유게시판

jquery animate가 ie8에서 느려지는 이유가 뭘까요. 정보

jquery animate가 ie8에서 느려지는 이유가 뭘까요.

본문

개발을 항상 크롬과 파폭기준으로 하고 있어서 IE 테스트는 가장 늦게 해 보는 편인데요.
조금 큰 규모의 animate를 할 때는 IE(특히 IE8)에서 프레임이 아주 심하게 끊어 지는 현상이 일어납니다.

 
지금 그런 현상이 나타나는 페이지 입니다.
크롬과 파폭에서는 생각한 대로 움직임이 부드럽게 나타납니다.
IE9는 조금 버벅이긴 하지만 심각한 수준은 아니라고 판단 되어집니다만,
그 이하 버전에서는 너무 심하게 끊어 지는 현상이 일어납니다.
IE6, IE7은 버린다고 치더라도 IE8은 그러질 못해서 문제 입니다.

(function(window) {
var srTop = new Array();
var srLeft = new Array();
var moveLeft = null;
var moveTop = null;
$(".srMQ").each(function(index) {
var tTmp = $(this).css("top").split("px");
var lTmp = $(this).css("left").split("px");
srTop[index] = tTmp[0]-0;
srLeft[index] = lTmp[0]-0;
});
$("#wrap").mousemove(function(e) {
if(e.pageX > 900) {
moveLeft = e.pageX;
} else {
moveLeft = e.pageX -1800;
}
if(e.pageY > 450) {
moveTop = e.pageY;
} else {
moveTop = e.pageY -900;
}
$(".srMQ").each(function(index) {
var sum = 0.015;
$(this).stop(true).animate({top:moveTop*sum*(index+1)+srTop[index], left:moveLeft*sum*(index+1)+srLeft[index]},{duration:400});
});
});
}(window));

제 jQuery 코딩 방식인데요.
IE에서 안좋은 코딩 습관이 있을거 같은데(물런 총체적 난국의 발코딩입니다 ㅜ_ㅜ)
어떤 문제점이 있는지 알고 싶습니다.
DTD선언과 CSS를 쓰는것 부터 문제 일수도 있겠네요.
 
 
문제점이뭘까요?
 
추천
0

댓글 3개

IE8은 화면 업데이트가 좀 더딘 모양입니다. animate가 다 부드럽진 않더군요.
다른 브라우저들하고 너무 심하게 비교될 정도로 -_-;;


그리고 $.each로 돌리는 부분에 약간의 Term을 주시면 그나마 덜 버벅 거립니다. settimeout을 주시거나 아니면 약간의 노가다로 setinterval함수로 모든 object들을 animate시킨 후 interval을 없애는 거도 괜찮은 방법중에 하나입니다.
ie 브라우저의 스크립트가 다른 브라우저의 스크립트보다 좀 성능이 안좋은건 익히 아실거에요...

브라우저 속도 가 꼭 스크립트 성능이라고 얘기할수는 없으나..IE 제품이 원래 그래요;;;;;;;;
전체 199,665 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT