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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何聲明對象方法?

如何聲明對象方法?

達令說 2019-03-18 14:36:21
問題描述問題出現的環境背景及自己嘗試過哪些方法相關代碼<script>     //聲明構造函數     function ElementC (elementname,fatherelement,number) {        //傳入需要創建的元素名字         this.e = document.createElement(elementname);        //傳入需要加入哪個父元素的子元素末尾         this.fe = document.getElementsByTagName(fatherelement);     }    //聲明可繼承方法,創建元素方法     ElementC.prototype.create = function () {        this.fe.appendChild(this.e);     } onload=function (){    //創建對象     var test = new ElementC("table","body");    //調用創建元素方法     test.create(); }</script>我想創建一個對象,有一個實現最簡單的添加元素的方法,不過報錯提示沒有這個函數這里用用prototype聲明,因為我看的視頻教程說,這個屬性里的方法都是可繼承的。還有一點,關于javascript面向對象,原型,繼承,什么子類之類講解比較好的的視頻哪里有啊,感謝各位大佬
查看完整描述

2 回答

?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

document.getElementsByTagName這個方法返回的是一個集合,題中你寫的是body標簽,因此它會找到所有的body標簽,整合成一個集合,供你使用
因此你將你的代碼修改一下

// 在集合中拿第一個元素this.fe = document.getElementsByTagName(fatherelement)[0];

其實在2019年,我更推薦你使用document.querySelector(fatherelement);這個方法獲取DOM節點非常非常方便

關于你說的js基礎知識,我個人覺得看視頻去了解這些基礎知識是效率是比較慢的
建議你可以看書了解
推薦兩本書 《js高級程序設計》,《你不知道的js上卷》,著重就輕,結合書本和網上資料,MDN等。


查看完整回答
反對 回復 2019-03-18
?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

document.getElementsByTagName(fatherelement)返回的是一個HTMLCollection,也就是HTML 元素的集合。appendChild是單個元素的函數。
建議運行程序的時候在錯誤的地方打斷點,搞清楚每運行一行代碼,各個變量的值是什么。

查看完整回答
反對 回復 2019-03-18
  • 2 回答
  • 0 關注
  • 543 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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