群里有人问, 放大镜怎么写
Autojs版本: 9.0.5
Android版本: 8.0.0
软件可能还有些许bug, 介意就别看了, 百度找别的教程去
思路是最重要的, 其他的百度, bing, stackoverflow, 安卓文档, autojs文档, 最后才是群里问问
--- 牙叔教程
部分内容来自网络
本教程仅用于学习, 禁止用于其他用途
得到鼠标的pageX pageY 得到黄框父元素的offsetLeft offsetTop
pageX-offsetLeft得到黄框内x的位置 pageY-offsetTop得到黄框内y的位置
黄框.style.left = x-黄框.offsetWidth / 2 +'px' 黄框.style.top = y-黄框.offsetWidth / 2 +'px'
if(黄框.style.left <0){黄框.style.left = 0} else if(黄框.style.left >黄框父元素.offsetWidth - 黄框.offsetWidth){黄框.style.left = 黄框父元素.offsetWidth - 黄框.offsetWidth + 'px'}
同理top
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8"/>
<title>放大镜</title>
<meta name="keywords" content="" />
<meta name="Description" content="" />
<style type="text/css">
body,div,img {padding:0margin:0}
.con {width:256pxheight:192pxfloat:left}
.con img {width:256pxheight:192pxposition:absoluteborder:1px blue solid}
.dingwei {position:absolutewidth:100pxheight:100pxbackground-color:blackfilter:alpha(opacity=20)opacity:0.2cursor:movedisplay:none}
.big {float:leftwidth:400pxheight:400pxmargin:100pxoverflow:hidden}
</style>
</head>
<body>
<div class="con" id="father" style="position:relative">
<img src="images/huo.jpg" alt="图片"/>
<div id="aa" class="dingwei"> </div>
</div>
<div class="big" id="bpic">
<div class="inside"><img src="images/huo.jpg" alt="图片"/></div>
</div>
<script type="text/javascript">
var divs=document.getElementById("aa")
var fa=document.getElementById("father")
var maxWidth=maxHeight=S=0
var big=document.getElementById("bpic")
fa.onmouseover=function(){
divs.style.display="block"
big.style.display="block"
S=divs.offsetHeight/2
maxWidth=fa.clientWidth-divs.offsetWidth
maxHeight=fa.clientHeight-divs.offsetHeight//物块的活动范围;
}
fa.onmousemove=function(e){
a=e||window.event
var sbX=a.clientX
var sbY=a.clientY
var num=big.clientWidth/divs.clientWidth
var lf=sbX-S//鼠标的位置减去元素位置的一半的值就是元素的定位值;
var tp=sbY-S
//tp =tp<0?0:tp>maxHeight?maxHeight:tp
//lf =lf<0?0:lf>maxWidth?maxWidth:lf//判断物块的定位位置然后进行设置
if(tp<0){tp=0}
else{
if(tp>maxHeight){tp=maxHeight}
else{tp=sbY-S}
}
//判断物块的位置进行设置
if(lf<0){lf=0}
else{
if(lf>maxWidth){lf=maxWidth}
else{lf=sbX-S}
}
divs.style.left=lf+"px"
divs.style.top=tp+"px"
big.scrollLeft=num*lf
big.scrollTop=num*tp
}
fa.onmouseout=function(){
divs.style.display="none"
big.style.display="none"
}
</script>
</body>
</html>
这是放大镜效果的代码 你说的开启和关闭你自己再加上去就行了