js 마우스 운동 효과 따라 가기
1.명령 을 사용 하여 기본 구 조 를 만 듭 니 다 ul.cursor Play\#cursor Play>li*12>a>img+div>span
2.span 태그 에 필드 추가
3.기본 스타일 설정
1.마 우 스 를 연결 해서 들 어가 거나 나 가 는 이벤트
$("#cursorPlay li").on("mouseenter mouseleave",function(event){
var evType = event.type;
var direction = getDir($(this), {
x: event.pageX,
y: event.pageY
});
// console.log("evtype:"+evType+",dir:"+direction);
moveTo($(this),direction, evType);
});
2、getDir 를 사용 하여 마우스 가 움 직 이 는 방향,coordinates 좌 표를 가 져 옵 니 다.마우스 획 입 방향 함수 계산(검색 키워드"jquery 계산 마우스 획 출 방향")
direction = Math.round((((Math.atan2(y, x) * (180 / Math.PI)) + 180) / 90) + 3) % 4;
function getDir($el, coordinates){
var w = $el.width(),
h = $el.height(),
x = (coordinates.x - $el.offset().left - (w / 2)) * (w > h ? (h / w) : 1),
y = (coordinates.y - $el.offset().top - (h / 2)) * (h > w ? (w / h) : 1),
direction = Math.round((((Math.atan2(y, x) * (180 / Math.PI)) + 180) / 90) + 3) % 4;
return direction;
}
3.이동 함수 moveto 를 추가 합 니 다.세 개의 매개 변 수 는 선택 기,방향,마우스 로 그림 을 그 리 는 유형 입 니 다.마우스 로 그 리 는 유형 을 판단 하여 선택 기의 초기 위 치 를 정의 한 다음 css 스타일 을 다시 정의 합 니 다.마우스 로 그 릴 때 각 방향의 위 치 를 다시 정의 합 니 다.
function moveTo($el, direction, type){
var $layer = $el.find("div");
var coord = {};
if(type === "mouseenter"){
switch(direction){
case 0 : $layer.css("top","-100%").css("left","0px");break;
case 1 : $layer.css("left","100%").css("top","0px");break;
case 2 : $layer.css("top","100%").css("left","0px");break;
case 3 : $layer.css("left","-100%").css("top","0px");break;
}
coord = {left:0,top:0}
}else{
switch(direction){
case 0 : coord = {left:0,top:'-100%'};break;
case 1 : coord = {left:'100%',top:0};break;
case 2 : coord = {left:0,top:'100%'};break;
case 3 : coord = {left:'-100%',top:0};break;
}
}
$layer.animate(coord,300);
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[2022.04.19] 자바스크립트 this - 생성자 함수와 이벤트리스너에서의 this18일에 this에 대해 공부하면서 적었던 일반적인 함수나 객체에서의 this가 아닌 오늘은 이벤트리스너와 생성자 함수 안에서의 this를 살펴보기로 했다. new 키워드를 붙여 함수를 생성자로 사용할 때 this는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.