亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

老師這段代碼還是有點小BUG啊,為什么在IE中當鼠標懸浮到小圖片所在范圍邊框時,放大鏡就會出了小圖片的范圍跑到外面去了,這是為什么?。?nbsp;   課程下載的源代碼也是這樣。

正在回答

3 回答

最終找到了解決方法:

  1. 問題的原因:由于demo的盒子比img要大兩個像素的邊框,smallbox的盒子比demo的盒子又大兩個像素的邊框,所以會出現超出邊框的情況。

  2. 解決方法:將在計算中用smallbox的長寬值替換成smallimg原本的長寬值,即可解決BUG。

```

var ObjSmallbox = $("small-box");

var ObjSmallimg = ObjSmallbox.getElementsByTagName("img")[0];

//獲取floatbox的定位值

var left = _event.clientX - ObjDemo.offsetLeft - ObjSmallbox.offsetLeft - ObjFloatBox.offsetWidth / 2;

var top = _event.clientY - ObjDemo.offsetTop - ObjSmallbox.offsetTop - ObjFloatBox.offsetHeight / 2;


if(left < 0) left = 0;

else if(left > (ObjSmallimg.offsetWidth - ObjFloatBox.offsetWidth))

left = ObjSmallimg.offsetWidth - ObjFloatBox.offsetWidth;


if(top < 0) top = 0;

else if(top > (ObjSmallimg.offsetHeight - ObjFloatBox.offsetHeight))?

top = ObjSmallimg.offsetHeight - ObjFloatBox.offsetHeight;


ObjFloatBox.style.left = left + 'px';

ObjFloatBox.style.top = top + 'px';


var pecentX = left / (ObjSmallimg.offsetWidth - ObjFloatBox.offsetWidth);

var pecentY = top / (ObjSmallimg.offsetHeight - ObjFloatBox.offsetHeight);

```

0 回復 有任何疑惑可以回復我~
#1

ErogenousMonstar

原來不是用Markdown寫的,,,
2017-07-17 回復 有任何疑惑可以回復我~
#2

ErogenousMonstar

還有一種解決方法,把smallbox的長寬度全部用mark遮蓋層的長寬度替換
2017-07-17 回復 有任何疑惑可以回復我~

然后就發現我回答錯了?。。。?!把border去掉之后還是有BUG!

0 回復 有任何疑惑可以回復我~

原因是smallbox長度多了兩像素是floatbox的邊框長度,但是我不知道怎么修改才能解決這個BUG

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號