마우스 그리기 프레임을 구현하고 프레임에서 데이터를 선택하는 jQuery를 마스터하세요.
JQuery를 사용해 마우스 프레임을 구현하고 프레임 안의 데이터를 선택할 수 있나요? 이번 글에서는 예제 코드를 통해 마우스 프레임을 구현하고 프레임 안의 데이터를 선택하는 jQuery 예제 코드를 소개하고 있는데, 참고할만한 내용이 많습니다.
jquery 라이브러리:
jquery-1.10.2.min.js, jQuery UI - v1.12.1.
jQuery code
그 이상은 아니지만 코드를 살펴보겠습니다. 이해가 안되는 부분이 있으면 댓글을 읽어보세요.
<script type="text/javascript"> //鼠标按下时的X Y坐标 var mouseDownX; var mouseDownY; //鼠标按下时移动的X Y 坐标 var mouseMoveX; var mouseMoveY; //移动的状态 var isMove = false; /*初始化 选择框 */ function init() { $("#selected").css("display", "none"); $("#selected").css("top", "0"); $("#selected").css("left", "0"); $("#selected").css("width", "0"); $("#selected").css("height", "0"); } $(document).ready(function() { init(); var selectedTD = new Array();//创建被选中表格数组 var TD = $("td");//获取所有表格信息 for ( var i = 0; i < TD.length; i++) { selectedTD.push(TD[i]); } $("#tablep").mousedown(function(event) { mouseDownX = event.clientX - $(this).offset().left;; mouseDownY = event.clientY - $(this).offset().top; console.log("mouseDownX=" + mouseDownX +" mouseDownY=" + mouseDownY ); if(event.target.id.match(/selected/)) { isMove = true; } //鼠标按下并移动时进行判断(拖拽 or 画框) $("#tablep").mousemove(function(event) { mouseMoveX = event.clientX - $(this).offset().left; mouseMoveY = event.clientY - $(this).offset().top; var selectp = document.getElementById("selected"); if (isMove) { //拖拽的代码,因为实在不想算 xy 了,所以使用了jquery ui $("#selected").draggable(); //这部分是负责画框的时候,实时把框住的表格变色的,(代码和下面的代码重复了) var left = selectp.offsetLeft, top = selectp.offsetTop; width = selectp.offsetWidth, height = selectp.offsetHeight; for ( var i = 0; i < selectedTD.length; i++) { var sl = selectedTD[i].offsetWidth + selectedTD[i].offsetLeft; var st = selectedTD[i].offsetHeight + selectedTD[i].offsetTop; if (sl > left && st > top && selectedTD[i].offsetLeft < left + width && selectedTD[i].offsetTop < top + height) { if (selectedTD[i].className.indexOf("selected") == -1) { selectedTD[i].className = "selected"; } } else { if (selectedTD[i].className.indexOf("selected") != -1) { selectedTD[i].className = "TD"; } } } } else { //重复的代码,完了再把它抽取出来 var left = selectp.offsetLeft, top = selectp.offsetTop; width = selectp.offsetWidth, height = selectp.offsetHeight; for ( var i = 0; i < selectedTD.length; i++) { var sl = selectedTD[i].offsetWidth + selectedTD[i].offsetLeft; var st = selectedTD[i].offsetHeight + selectedTD[i].offsetTop; if (sl > left && st > top && selectedTD[i].offsetLeft < left + width && selectedTD[i].offsetTop < top + height) { if (selectedTD[i].className.indexOf("selected") == -1) { selectedTD[i].className = "selected"; } } else { if (selectedTD[i].className.indexOf("selected") != -1) { selectedTD[i].className = "TD"; } } } //鼠标抬起结束画框,和拖动 $("#tablep").mouseup(function() { console.log("mouseUpX=" + mouseMoveX + " mouseUpY=" + mouseMoveX); isMove = false; $(this).unbind('mousemove'); }) //画框 displaySelected(mouseDownY, mouseDownX, mouseMoveX, mouseMoveY); } }) }) //当鼠标在已经画好的框上时,改变鼠标指针样式,就是十字形了 $("#selected").mouseenter(function() { $("#selected").css("cursor", "move"); }); }); function displaySelected(mouseDownY, mouseDownX, mouseUpX, mouseUpY) { $("#selected").css("display", "block"); $("#selected").css("top", mouseDownY); $("#selected").css("left", mouseDownX); var moveX = mouseMoveX - mouseDownX; var moveY = mouseMoveY - mouseDownY; if (moveY < 0) { $("#selected").css("top", event.clientY - $("#table").offset().top); } if (moveX < 0) { $("#selected").css("left", event.clientX - $("#table").offset().left); } $("#selected").css("width", Math.abs(moveX)); $("#selected").css("height", Math.abs(moveY)); } </script>
HTML for test
테이블을 사용하여 테스트:
<p id="tablep" style="width: 1500px; height: 1500px;top: 100px; left:100px; position: absolute;"> <p id="selected" style="border:5px dotted rgb(239, 37, 17);position: absolute;display: none;"></p> <table border="1" style=" width: 1500px; height: 1500px;" id="table"> <tr> <td id="1" class="TD"></td> <td id="2" class="TD"></td> <td id="3" class="TD"></td> <td id="4" class="TD"></td> <td id="5" class="TD"></td> <td id="6" class="TD"></td> </tr> <tr> <td id="7" class="TD"></td> <td id="8" class="TD"></td> <td id="9" class="TD"></td> <td id="10" class="TD"></td> <td id="11" class="TD"></td> <td id="12" class="TD"></td> </tr> <tr> <td id="1" class="TD"></td> <td id="2" class="TD"></td> <td id="3" class="TD"></td> <td id="4" class="TD"></td> <td id="5" class="TD"></td> <td id="6" class="TD"></td> </tr> </table> <!--表格代码太多所以...--> </p>
Rendering
관련 권장 사항:
jquery 마우스 호버 탐색 밑줄 슬라이드 아웃 효과에 대한 설명 예
j 쿼리 코드 흥미로운 특별함 실현 마우스 클릭 텍스트에 미치는 영향
테이블에서 마우스 클릭 위치의 행 번호와 열 번호를 얻기 위한 jQuery 구현에 대한 자세한 설명
위 내용은 마우스 그리기 프레임을 구현하고 프레임에서 데이터를 선택하는 jQuery를 마스터하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











이번 글에서는 Win11 시스템에서 작업 표시줄 아이콘을 마우스로 움직일 때 표시되는 썸네일 기능을 끄는 방법을 소개하겠습니다. 이 기능은 기본적으로 켜져 있으며 사용자가 작업 표시줄의 응용 프로그램 아이콘 위에 마우스 포인터를 올리면 응용 프로그램의 현재 창 축소판이 표시됩니다. 그러나 일부 사용자는 이 기능이 덜 유용하거나 경험에 지장을 준다고 생각하여 이 기능을 끄고 싶어할 수도 있습니다. 작업 표시줄 축소판은 재미있을 수도 있지만 주의를 산만하게 하거나 짜증나게 할 수도 있습니다. 이 영역 위로 마우스를 가져가는 빈도를 고려하면 실수로 중요한 창을 몇 번 닫았을 수도 있습니다. 또 다른 단점은 더 많은 시스템 리소스를 사용한다는 것입니다. 따라서 리소스 효율성을 높일 수 있는 방법을 찾고 있다면 비활성화하는 방법을 알려드리겠습니다. 하지만

3월 31일 이 웹사이트의 소식에 따르면 HP는 최근 JD.com에서 검은색과 흰색 밀크티 색상으로 제공되는 Professor1 3모드 블루투스 마우스를 출시했으며 초기 가격은 99위안, 보증금 10위안이 필요합니다. . 보도에 따르면 이 마우스는 무게가 106g, 인체공학적 디자인을 채택하고 크기가 127.02x79.59x51.15mm이며 7가지 옵션 4000DPI 레벨을 갖추고 있으며 Blue Shadow RAW3220 센서가 장착되어 있으며 650mAh 배터리를 사용할 수 있다고 합니다. 한 번 충전으로 2개월 동안 사용할 수 있습니다. 본 사이트에 첨부된 마우스 매개변수 정보는 다음과 같습니다.

7월 12일 이 사이트의 뉴스에 따르면 Razer는 오늘 Razer|Pokémon Gengar 무선 마우스 및 마우스 패드 출시를 발표했습니다. 단일 제품 가격은 각각 1,299위안, 299위안이며, 두 제품을 포함한 패키지 가격은 1,549위안이다. Razer가 Gengar 공동 브랜드 주변 장치 제품을 출시한 것은 이번이 처음이 아닙니다. 2023년 Razer는 Gengar 스타일 Yamata Orochi V2 게임 마우스를 출시했습니다. 이번에 출시된 두 가지 신제품은 모두 고스트, 고스트, 젠가 계열의 외형과 유사한 진한 보라색 배경을 사용하며, 중간에 젠가라는 캐릭터를 중심으로 이 세 가지 포켓몬과 몬스터볼의 윤곽이 인쇄되어 있습니다. 고전적인 유령형 포켓몬의 크고 화려한 이미지. 이 사이트에서는 Razer|Pokémon Gengar 무선 마우스가 이전에 출시된 Viper V3 Professional Edition을 기반으로 한다는 사실을 발견했습니다. 전체 무게는 55g이며 Razer의 2세대 FOC가 탑재되어 있습니다.

8월 12일 이 웹사이트의 소식에 따르면 VGN은 8월 6일 Lani/Faded One의 맞춤형 테마로 디자인된 키보드, 마우스 및 마우스 패드를 포함하는 공동 "Elden Ring" 키보드 및 마우스 시리즈를 출시했습니다. 가격은 99위안부터 JD.com에 게시되었습니다. 이 사이트에 첨부된 공동 브랜드 신제품 정보는 다음과 같습니다. VGN丨Elden Law Ring S99PRO 키보드 이 키보드는 순수 알루미늄 합금 쉘을 사용하고 5층 소음기 구조로 보완되었으며 GASKET 판 스프링 구조를 사용하고 단일 -키 슬롯형 PCB 및 원래 높이의 PBT 소재 키캡, 알루미늄 합금 맞춤형 백플레인, VHUB에 연결된 SMARTSPEEDX 저지연 기술을 지원하며 가격은 549위안부터 시작됩니다. VGN丨Elden French Ring F1PROMAX 무선 마우스 더 마우스

많은 사용자는 Razer 드라이버로 설치한 파일이 어디에 있는지 모릅니다. 이러한 드라이버 파일은 일반적으로 컴퓨터의 C 드라이브인 시스템 디스크에 설치됩니다. 특정 위치는 프로그램 파일 아래의 RAZE 폴더에 있습니다. Razer 마우스 드라이버는 어떤 폴더에 있습니까? A: 시스템 C 드라이브의 프로그램 파일 아래 RAZE 폴더에 있습니다. 일반적으로 드라이버는 C 드라이브에 설치되며, 위치에 따라 찾으면 됩니다. Razer 마우스 드라이버 설치 방법 소개 1. 공식 홈페이지에서 파일을 다운로드한 후, 다운로드한 EXE 파일을 더블클릭하여 실행하세요. 2. 소프트웨어가 로드될 때까지 기다립니다. 3. 여기에서 설치하려는 드라이버를 선택할 수 있습니다. 4. 선택 후 오른쪽 하단의 "설치"를 클릭하세요.

3월 22일 이 웹사이트의 소식에 따르면 Delux는 오른손잡이용 인체공학적 모양의 M900Pro 무선 게이밍 마우스를 출시했습니다. 첫 번째 사전 판매 가격은 199위안부터 시작됩니다. 컬러풀한 M900Pro는 오른손잡이용 인체공학적으로 설계되었으며 중손부터 큰 손을 가진 사용자를 위해 제작되었습니다. 무게는 63g이며 무광택 UV 코팅이 도포되어 있습니다. 마우스는 PAW3395 센서를 사용하고 원래 Nano 수신기는 8000Hz 무선 반환 속도를 지원하며 Huannuo 블루 쉘 핑크 도트 마이크로 무브먼트가 장착되어 있으며 RGB 충전 베이스와 미끄럼 방지 스티커가 표준으로 제공됩니다. 또한 마우스는 LOD 조정, 전체 키 사용자 정의, 사용자 정의 리플 제어 및 직선 교정과 같은 기능도 지원합니다. 이 마우스에는 PTFE 풋 패드, 1.6m 낙하산 코드 및 내장형 수신기 보관함이 장착되어 있습니다. 이 사이트는 이 마우스의 특정 매개변수를 다음과 같이 요약합니다. 색상: 검정색, 흰색, 빨간색

1. [win+x] 키 조합을 눌러 시스템 바로가기 메뉴를 열고 [컴퓨터 관리]를 클릭하세요. 2. 일회성 확장: 작업 스케줄러 작업 스케줄러 라이브러리 microsoftwindowstpm. 3. 창 오른쪽의 [임시 유지 관리 작업]을 찾아 비활성화하세요.

마우스 균형추를 구입한 후 사용감과 안정성을 높이려면 어떻게 설치해야 하나요? 오늘은 마우스 균형추 설치 방법을 알려드리겠습니다. 마우스 평형추 설치 방법: 1. 마우스 아래에 자석이 있어 아래쪽으로 엽니다. 2. 그런 다음 핀셋을 사용하여 웨이트 박스를 엽니다. 3. 그런 다음 마우스 아래에 웨이트 블록을 놓습니다. 4. 마지막으로 마우스의 안정성이 향상되었습니다.
