課程
/前端開發
/JavaScript
/商城分類導航效果
在if判斷中h和h0判斷并沒有得到相應的效果把
2015-09-09
源自:商城分類導航效果 4-1
正在回答
好貼必須頂
Scott丶 提問者
有個地方輸入錯誤:if (h < h0){......} 判斷就變成了if(70>h0){......}
現在改過來是這樣:if (h < h0){......} 判斷就變成了if(70<h0){......}
樓主厲害,能看到這一點,也是挺厲害的。老師代碼確實是錯了,只不過錯的地方是:
首先,var y = this.getElementsByTagName("div")[0].offsetHeight;
這個語句是有效的,返回值是整形70;
再次,var h = this.getElementsByTagName("div")[0].style.top + y;
這個語句有錯誤,因為this.getElementsByTagName("div")[0].style.top無法獲取其top值,沒有返回值(你可以用alert測試下);而+ y 以后,返回值是y的值,最后得出h等于70(同樣可以alert一下);
然后,if (h < h0){......} 判斷就變成了if(70>h0){......},而不是老師本意:div框距離頂部的距離加上本身的高度,是否小于h0;
最后,因為h的值是70,所以if(h<h0)仍然成立所以繼續執行{this.getElementsByTagName("div")[0].style.top = h0 + "px";},所以最后 div 框的top 仍然變成了 h0 即 192px;
改正代碼:
將: ? var h = this.getElementsByTagName("div")[0].style.top + y;
改為:var h = this.getElementsByTagName("div")[0].offsetTop + y;
自己測試了下 感覺代碼有點錯。。。
這兩個offset和top的概念沒理解明白
舉報
兩種方法實現分類導航,同時擴展講解其它商城分類導航的制作方法
2 回答style.top屬性的返回值不是字符串類型的嗎??
3 回答為什么最后在加白色方框時加的是相對定位呢?為什么沒有相對定位就遮不住邊框了?
2 回答圖書,音像,數字商品 應該是 3 個<a> 標簽吧? 這樣每一個單獨的都可以點擊.
2 回答為什么老師的字不會被覆蓋,我的會呢?
4 回答style.top 得不到top的值
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-04-20
好貼必須頂
2015-12-08
有個地方輸入錯誤:if (h < h0){......} 判斷就變成了if(70>h0){......}
現在改過來是這樣:if (h < h0){......} 判斷就變成了if(70<h0){......}
2015-12-08
樓主厲害,能看到這一點,也是挺厲害的。老師代碼確實是錯了,只不過錯的地方是:
首先,var y = this.getElementsByTagName("div")[0].offsetHeight;
這個語句是有效的,返回值是整形70;
再次,var h = this.getElementsByTagName("div")[0].style.top + y;
這個語句有錯誤,因為this.getElementsByTagName("div")[0].style.top無法獲取其top值,沒有返回值(你可以用alert測試下);而+ y 以后,返回值是y的值,最后得出h等于70(同樣可以alert一下);
然后,if (h < h0){......} 判斷就變成了if(70>h0){......},而不是老師本意:div框距離頂部的距離加上本身的高度,是否小于h0;
最后,因為h的值是70,所以if(h<h0)仍然成立所以繼續執行{this.getElementsByTagName("div")[0].style.top = h0 + "px";},所以最后 div 框的top 仍然變成了 h0 即 192px;
改正代碼:
將: ? var h = this.getElementsByTagName("div")[0].style.top + y;
改為:var h = this.getElementsByTagName("div")[0].offsetTop + y;
2015-11-05
自己測試了下 感覺代碼有點錯。。。
2015-09-10
這兩個offset和top的概念沒理解明白