웹 프론트엔드 JS 튜토리얼 jQuery 마우스 오버(hover) 이벤트 지연 처리 example_jquery

jQuery 마우스 오버(hover) 이벤트 지연 처리 example_jquery

May 16, 2016 pm 04:52 PM
hover 이벤트 마우스 오버

1. 마우스 호버 이벤트 및 지연 정보
마우스 통과 이벤트는 웹 페이지에서 매우 일반적인 이벤트 중 하나입니다. 간단한 호버는 CSS :hover 의사 클래스를 사용하여 구현할 수 있고, 더 복잡한 호버는 js를 사용하여 구현할 수 있습니다.

일반적인 상황에서는 마우스 호버 이벤트 처리가 지연되지 않습니다. 그러나 때로는 불필요한 간섭을 피하기 위해 마우스 호버 이벤트가 지연되는 경우가 많습니다. 소위 간섭이란 사용자가 실수로 링크나 탭, 기타 영역을 마우스로 터치했을 때 숨겨진 레이어가 표시되지 않거나 탭이 전환되는 것을 의미하는데, 호버 이벤트(또는 마우스오버 이벤트)가 이에 묶여 있기 때문입니다. 요소), 지체 없이 이러한 시간이 즉시 트리거되어 사용자에게 방해가 됩니다.

예를 들어 Tencent 홈페이지에서는 탭

腾讯首页选项卡 张鑫旭-鑫空间-鑫生活

또는 상단 Soso 탐색 모음과 같은 거의 모든 마우스 통과 이벤트가 지연됩니다. 아래 그림을 참조하세요:

腾讯网首页搜搜搜索栏 张鑫旭-鑫空间-鑫生活

2. 예제 및 데모
이 글의 주요 내용은 제가 며칠 전에 작성한 마우스 지연 방법을 보여주는 것입니다. jQuery의 경우 품질이 좋지 않으며 참조용으로만 사용됩니다. 이 기사에서는 Tencent 홈페이지에 있는 Soso 검색창의 마우스 통과 효과를 예로 들어 jQuery에서의 지연 처리를 보여줍니다. 아래 그림은 데모 페이지 효과의 스크린샷입니다:

jQuery鼠标延迟demo截图 张鑫旭-鑫空间-鑫生活

3. 코드 및 구현
지연 얘기가 나와서 말인데, 창 아래에 setTimeout 메서드가 없으면 할 수 없습니다. 이 예에서는 jQuery 메소드의 핵심도 setTimeout입니다. 코드는 길지 않습니다. 전체 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

(함수($){
$.fn.hoverDelay = 함수(옵션){
var defaults = {
hoverDuring: 200,
outDuring: 200,
hoverEvent: function(){
$.noop();
},
outEvent: function(){
$.noop()
}
}; 🎜>var set = $.extend(defaults ,options || {});
var hoverTimer, outTimer
return $(this).each(function(){
$(this).hover; (function(){
clearTimeout( outTimer);
hoverTimer = setTimeout(sets.hoverEvent, set.hoverDuring);
},function(){
clearTimeout(hoverTimer);
outTimer = setTimeout(sets.outEvent, set.outDuring );
});
})
}
})(jQuery); 이 코드의 목적은 마우스가 이벤트를 통과하도록 하는 것이며 지연, 지연 및 지연 삭제의 분리가 이 방법으로 해결되었습니다. 여러분이 해야 할 일은 지연 시간과 해당 마우스 통과 또는 제거 이벤트를 설정하는 것뿐입니다. 간단한 예를 들어보겠습니다. 다음 코드는




코드 복사
코드는 다음과 같습니다. $("#test").hoverDelay({ hoverEvent: function(){ alert("패스해 주세요!");
}
});

은 id 테스트가 있는 요소가 마우스가 해당 요소 위로 지나간 후 ​​200밀리초 후에 "Pass me!"라는 텍스트가 포함된 팝업 상자를 표시한다는 의미입니다.

자, 이제 이 글의 예시에 적용해 보세요.

Tencent.com 홈페이지 검색창의 마우스 지연 외에도 jQuery-Ma Huateng의 제품 디자인과 일부를 사용하여 스킨 변경에 대해 언급한 바 있습니다. 사용자 경험 기술 구현 기사에서 해당 데모 페이지를 보려면 여기를 클릭하세요: Tencent 홈페이지 맞춤형 스킨 변경 데모 페이지

먼저 Tencent 홈페이지 검색창의 기본 HTML 구조 필드 코드를 표시하세요. 🎜>




코드 복사


코드는 다음과 같습니다.


网页


사진


视频


음향


搜吧


问问


博客


更多▼




与先首页代码几乎一致,如假包换。现延迟执行。

复代码 代码如下:

$(".s2").each(function(){
$ ("#sosoFod h3").each(function(){
var that = $(this);
var id = that.attr("id");
if(id){
that.hoverDelay({
hoverEvent: function(){
$(".s1").attr("class","s2");
that.attr("class","s1 "); //感谢“type23”提供了绑定对象방법
$(this).attr("class","s1");
}
});
}else{
that.hoverDelay({
outDuring: 1000,
hoverEvent: function(){
$("#tm").show();
},
outEvent: 함수 (){
$("#tm").hide();
}
})


唉,惭愧,代码就这样,没什么技术含藏 ,希望对有毹多 下拉鼠标移后1000毫秒后下拉框隐藏。

基本上뚜是代码에서 撑页면,说点다양한 용도의 东西吧.

hoverDelay 방법共4个参数,表示意思如下:

hoverDuring       鼠标经过的延时时间
outDuring          鼠标移出的延时时间

hoverEvent        鼠标经过执行间
outEvent         鼠标移流执行적 방법

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CSS 팁: 전환을 사용하여 호버 상태 유지 CSS 팁: 전환을 사용하여 호버 상태 유지 Sep 27, 2022 pm 02:01 PM

호버 상태를 유지하는 방법은 무엇입니까? 다음 글에서는 JavaScript를 사용하지 않고 호버 상태를 유지하는 방법을 소개하겠습니다. 도움이 되길 바랍니다.

이벤트 ID 4660: 개체가 삭제되었습니다. [수정] 이벤트 ID 4660: 개체가 삭제되었습니다. [수정] Jul 03, 2023 am 08:13 AM

독자 중 일부는 이벤트 ID4660을 경험했습니다. 그들은 무엇을 해야 할지 확신하지 못하는 경우가 많으므로 이 가이드에서 이에 대해 설명합니다. 이벤트 ID 4660은 일반적으로 개체가 삭제될 때 기록되므로 컴퓨터에서 이 문제를 해결할 수 있는 몇 가지 실용적인 방법도 살펴보겠습니다. 이벤트 ID4660이란 무엇입니까? 이벤트 ID 4660은 Active Directory의 개체와 관련되어 있으며 다음 요소에 의해 트리거됩니다. 개체 삭제 – Active Directory에서 개체가 삭제될 때마다 이벤트 ID 4660이 포함된 보안 이벤트가 기록됩니다. 수동 변경 - 사용자 또는 관리자가 개체의 사용 권한을 수동으로 변경할 때 이벤트 ID 4660이 생성될 수 있습니다. 이는 권한 설정을 변경하거나, 액세스 수준을 수정하거나, 사람이나 그룹을 추가 또는 제거할 때 발생할 수 있습니다.

Haval X1 카메라로 비행을 즐겨보세요. Haval X1 카메라로 비행을 즐겨보세요. Jan 15, 2024 pm 02:21 PM

우리는 인터넷에서 멋진 하향식 영상을 자주 볼 수 있는데, 드론으로 찍은 사진은 참으로 충격적입니다. 비행이 제한되는 곳은 어디입니까? 실제로 바로 비행 가능한 "드론"이 현재 주류이며 대부분의 사람들이 선택할 가치가 더 높습니다. 오늘은 Harvest Flying Camera X1에 대한 실습 경험을 제공하겠습니다. 외관상으로 보면 Harvest Flying Camera X1은 최초의 접이식 디자인을 가지고 있습니다. 전체 카메라의 무게는 125g으로, 접은 후에는 부담 없이 손에 쥐고 가방에 넣을 수 있습니다. . 4장의 부드러운 염색잎과 안전 프레임 디자인으로 촬영의 안전을 완벽하게 보호합니다. Dyed Leaf는 탄력성이 뛰어나고 내구성이 뛰어나며 안전하고 환경 친화적인 바이오 기반 생물학적 기질을 혁신적으로 사용합니다. 이착륙 시 손을 보호할 수 있는 완벽한 보호 프레임도 있습니다.

iPhone 잠금 화면에서 예정된 캘린더 이벤트 받기 iPhone 잠금 화면에서 예정된 캘린더 이벤트 받기 Dec 01, 2023 pm 02:21 PM

iOS 16 이상을 실행하는 iPhone에서는 예정된 캘린더 이벤트를 잠금 화면에 직접 표시할 수 있습니다. 이 작업이 어떻게 수행되었는지 알아보려면 계속 읽어보세요. 시계 페이스 컴플리케이션 덕분에 많은 Apple Watch 사용자는 손목을 통해 다음 캘린더 이벤트를 확인하는 데 익숙합니다. iOS16 및 잠금 화면 위젯의 등장으로 기기 잠금을 해제하지 않고도 iPhone에서 직접 동일한 캘린더 이벤트 정보를 볼 수 있습니다. 캘린더 잠금 화면 위젯은 두 가지 형태로 제공되며, 다음 예정된 이벤트 시간을 추적하거나 이벤트 이름과 시간을 표시하는 더 큰 위젯을 사용할 수 있습니다. 위젯 추가를 시작하려면 Face ID 또는 Touch ID를 사용하여 iPhone을 잠금 해제하고 길게 누르세요.

CSS에서 호버 이벤트를 제거하는 방법 CSS에서 호버 이벤트를 제거하는 방법 Feb 01, 2023 am 10:06 AM

CSS 호버 이벤트를 제거하는 방법: 1. "$("a").hover(function(){ Alert('mouseover'); }, function(){을 통해 2. "$('a').off('mouseenter').unbind('mouseleave');" 메소드를 통해 호버 이벤트를 바인딩 해제합니다. 할 수 있다.

JavaScript에서 'oninput' 이벤트의 목적은 무엇입니까? JavaScript에서 'oninput' 이벤트의 목적은 무엇입니까? Aug 26, 2023 pm 03:17 PM

입력 상자에 값이 추가되면 oninput 이벤트가 발생합니다. JavaScript에서 oninput 이벤트를 구현하는 방법을 이해하려면 다음 코드를 실행해 보세요. - 예<!DOCTYPEhtml><html> <body> <p>아래 쓰기:</p> <inputtype="text&quot

HTML에서 hover의 역할 HTML에서 hover의 역할 Feb 20, 2024 am 08:58 AM

HTML 및 특정 코드 예제에서 호버의 역할 웹 개발에서 호버는 사용자가 요소 위에 커서를 놓으면 일부 작업이나 효과가 트리거되는 것을 의미합니다. 이는 CSS :hover 의사 클래스를 통해 구현됩니다. 이번 글에서는 hover의 역할과 구체적인 코드 예시를 소개하겠습니다. 첫째, hover를 사용하면 사용자가 요소 위로 마우스를 가져갈 때 요소의 스타일이 변경됩니다. 예를 들어 버튼 위에 마우스를 올리면 버튼의 배경색이나 텍스트 색상을 변경하여 사용자에게 다음에 수행할 작업을 상기시킬 수 있습니다.

jQuery에서 선택 요소의 변경 이벤트 바인딩을 구현하는 방법 jQuery에서 선택 요소의 변경 이벤트 바인딩을 구현하는 방법 Feb 23, 2024 pm 01:12 PM

jQuery는 DOM 조작, 이벤트 처리, 애니메이션 효과 등을 단순화하는 데 사용할 수 있는 인기 있는 JavaScript 라이브러리입니다. 웹 개발에서 우리는 선택 요소에 대한 이벤트 바인딩을 변경해야 하는 상황에 자주 직면합니다. 이 기사에서는 jQuery를 사용하여 선택 요소 변경 이벤트를 바인딩하는 방법을 소개하고 특정 코드 예제를 제공합니다. 먼저 라벨을 사용하여 옵션이 포함된 드롭다운 메뉴를 만들어야 합니다.

See all articles