亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

javascript - 想讓圖片上那個塊,在增加塊的寬度的時候向右邊移動,而不是向左邊移動。需要怎么解決?

瀏覽:70日期:2023-04-07 18:55:32

問題描述

<!DOCTYPE html><html><head> <title></title> <mata http-equiv=”content-type” content=”text/html; charset=gb2312” /> <style type='text/css'>* { margin: 0; padding: 0; font-size: 14px; font-family: '微軟雅黑';} </style></head><body> <p style='width:30px; height:30px;background:#808080; '></p> <p style='width:30px; height:30px;background:#808080; margin-left:170px; '></p> <p style='width:30px; height:30px;background:#808080; position:absolute;left:140px;top:200px;padding-left:0;'></p> <p style='width:30px; height:30px;background:#808080; position:absolute;top:170px'></p></body></html><script type='text/javascript'> setInterval(change, 5); function change() {var p1 = document.getElementById(’p1’);var p2 = document.getElementById(’p2’);var p3 = document.getElementById(’p3’);var p4 = document.getElementById(’p4’);var x = parseInt(p1.style.width);console.log(x);if (x<200) { x++;}p1.style.width = x + 'px';if (x =='200') { var y = parseInt(p2.style.height); if (y<200) { y++; } p2.style.height = y + 'px'; } if (y == '200') { var z = parseInt(p3.style.width); if (z < 200) { z++; } p3.style.width = z + 'px';} }</script>

javascript - 想讓圖片上那個塊,在增加塊的寬度的時候向右邊移動,而不是向左邊移動。需要怎么解決?

問題解答

回答1:

由于,HTML內坐標系是從左往右是X軸,從上到下是Y軸。你的第三條邊,實際上是從紅點開始延長的一個長方形:javascript - 想讓圖片上那個塊,在增加塊的寬度的時候向右邊移動,而不是向左邊移動。需要怎么解決?

由于,第三條邊是從正方形p3延長而來,而由于你增加了正方形的寬度,又因為屏幕從左向右為X軸正方向,所以寬度增加正方形會向右延長成長方形。而如果你要讓這個變長的效果“看起來”是在向左移動,那么就要在每一次變長的同時,將紅點向左移動相同的距離。

所以,對于p3的操作應該這樣寫:

if (y == '200') { var z = parseInt(p3.style.width); if (z < 200) {z++; } p3.style.marginLeft = (-z + 30) + ’px’; // 加上上面一句,至于為什么是-z + 30 // 其實是-(z - 30) // 因為,原本方塊的寬度就是30, // 那么,在X軸正方向(寬度增量就是z - 30) // 由于寬度向右伸長了z - 30 // 所以將左邊距設置為-(z - 30),來抵消這個向右伸長的增量 // 所以,看起來就是在向左移動 // 實際上是伸長以后將整個圖形同時向左移相應的距離 // 而并非是實際向左伸長 p3.style.width = z + 'px';}

效果圖:javascript - 想讓圖片上那個塊,在增加塊的寬度的時候向右邊移動,而不是向左邊移動。需要怎么解決?

回答2:

由于,HTML內坐標系是從左往右是X軸,從上到下是Y軸。你的第三條邊,實際上是從紅點開始延長的一個長方形:

由于,第三條邊是從正方形p3延長而來,而由于你增加了正方形的寬度,又因為屏幕從左向右為X軸正方向,所以寬度增加正方形會向右延長成長方形。而如果你要讓這個變長的效果“看起來”是在向左移動,那么就要在每一次變長的同時,將紅點向左移動相同的距離。

所以,對于p3的操作應該這樣寫:

if (y == '200') {

var z = parseInt(p3.style.width);if (z < 200) { z++;}p3.style.marginLeft = (-z + 30) + ’px’;// 加上上面一句,至于為什么是-z + 30// 其實是-(z - 30)// 因為,原本方塊的寬度就是30,// 那么,在X軸正方向(寬度增量就是z - 30)// 由于寬度向右伸長了z - 30// 所以將左邊距設置為-(z - 30),來抵消這個向右伸長的增量// 所以,看起來就是在向左移動// 實際上是伸長以后將整個圖形同時向左移相應的距離// 而并非是實際向左伸長p3.style.width = z + 'px';

}效果圖:

標簽: JavaScript
主站蜘蛛池模板: www.免费黄色 | 国产伦精一区二区三区 | 国产大片91精品免费观看不卡 | 国产亚洲精品久久久久久午夜 | 欧美αv日韩αv另类综合 | 国产成人久久综合热 | 日本在线亚洲 | 久久精品免看国产 | 黄色一集片 | 免费国外性视频网站 | 日本亚洲精品无码专区 | 欧美精品综合一区二区三区 | 中日韩国语视频在线观看 | 最新永久一路线二路线三路线 | 激情国产 | 欧美激情特级黄aa毛片 | 亚洲免费视频网 | 九九99香蕉在线视频网站 | 国产在线视频专区 | 最新欧美精品一区二区三区不卡 | 日本黄色录像视频 | 国内真实迷j下药在线观看 国内真实愉拍系列情侣 | 在线观看黄网视频免费播放 | 性欧美一级毛片在线播放 | 特黄十八岁大片 | 亚洲国产精品成人久久 | 成年视频xxxxx在线入口 | 欧美精品第1页在线播放 | 亚洲夜夜骑 | 美国a级作爱片免费观看美国 | 国产一区二区免费播放 | 男女啪啪抽搐一进一出小 | 黄片毛片免费观看 | 网友自拍视频在线 | 一级特色黄色片 | 午夜两性mp4 | 日韩欧美一级a毛片欧美一级 | 国产成人精品在线观看 | 久久一本日韩精品中文字幕屁孩 | 亚洲国产日韩无在线播放 | 成人精品|