This article example shares the specific code of jQuery's custom magnifying glass effect for your reference. The specific content is as follows jQuery plugin definition: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script src="js/jquery3.6.0.js"></script> <style type="text/css"> div{ width: 200px; height: 200px; } </style> </head> <body> <div></div> <div></div> <script> // 1. jQuery plugin, defined on the basis of jQuery.fn // 2. Naming conflict resolution // 3. Loop through each element in the jQuery object // 4. In the function, return jQuery (this) (function($){ $.fn.extend({ randomColor:function(){ // this refers to the pseudo array consisting of all the elements we selected through the $selector function random(){ var r = Math.floor(Math.random()*256); var g = Math.floor(Math.random()*256); var b = Math.floor(Math.random()*256); return 'rgb('+ r +','+ g +','+ b +')'; } this.each(function(index){ $(this).css({ backgroundColor:random() }) }) return this; } }) })(jQuery); $('div').randomColor(); </script> </body> </html> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{ margin: 0; padding: 0; } .magnifier .left{ width: 240px; height: 150px; float: left; position: relative; } .magnifier .left img{ width: 240px; height: 150px; } .magnifier .left .mask{ width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-color: black; opacity: 0.4; } .magnifier .float{ width: 50px; height: 50px; background: hotpink; opacity: 0.5; position: absolute; left: 0; top: 0; } .magnifier .right{ height: 200px; width: 200px; background-image: url(img/2.jpg) ; float: left; margin-left: 50px; } </style> </head> <body> <div class="magnifier"> <div class="left"> <img src="./img/2.jpg" > <div class="float"> </div> <div class="mask"></div> </div> <div class="right"></div> </div> <script src="js/jquery3.6.0.js"></script> <script> (function($){ $.fn.extend({ magnifier:function(){ this.each(function(){ var that=this; $('.left',this).mousemove(function (evt){ var x=evt.offsetX; var y=evt.offsetY; var float=$('.float',this); x=x-float.width/2; y=y-float.height/2; if(x<0){ x=0; } if(y<0){ y=0; } if(x > $(this).width()-float.width()){ x = $(this).width()-float.width(); } if(y > $(this).height()-float.height()){ y = $(this).height()-float.height(); } float.css({ left:x, top:y }); $('.right',that).css({ backgroundPosition:x*-4+'px' + y*-4+'px' }) }).mouseover(function(){ }).mouseout(function(){ }) }); } }) })(jQuery) $('.magnifier').magnifier(); </script> </body> </html> The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM. You may also be interested in:
|
<<: Resolving MySQL implicit conversion issues
>>: Example code for using Nginx to implement 301 redirect to https root domain name
All-round system monitoring tool dstat dstat is a...
As shown below: Yesterday: UNIX_TIMESTAMP(CAST(SY...
1. Multi-header table code Copy code The code is a...
This article shares the specific code for JavaScr...
In the later stage of exploiting SQL injection vu...
Table of contents 1. Props Parent >>> Ch...
The reason for writing such an article is that on...
Database transaction isolation level There are 4 ...
This article shares the specific code of writing ...
Database performance optimization generally adopt...
The automatic scrolling effect of the page can be...
<br />This is from the content of Web front-...
Browser compatibility is nothing more than style ...
grammar Here is the generic SQL syntax for INSERT...
Before installing Tomcat, install the JDK environ...