本文目錄一覽:
js中如何定義class,如何擴展prototype?
思路:
JS中定義class是通過function,有點類似C++語言中的struct概念。要定義class只需要定義function,並注意this的使用。
舉例:
script
function MyClass(){
this.a = ‘2’;//可以通過this定義屬性
}
MyClass.prototype.say= function () { //擴充方法
return ‘hello’;
}
MyClass.prototype.mValue= ‘3’;//擴充屬性
var mc = new MyClass();
alert(mc.a);
alert(mc.say());
alert(mc.mValue);
/script
js 中如何定義類?如何繼承類?
過去一年了啊,LZ找到答案了么
我也是初學,下面我舉個簡單的例子吧
htmlscript language=”javascript”
function ClassA(){
this.color = “”;
}
function ClassB(){
ClassA.call(this); //this是ClassB的對象
}
var b = new ClassB();
b.color=”green”;
document.write(b.color+”br”); //green
/script/html
定義兩個類ClassA、ClassB,ClassB原本沒有color這個屬性,但是通過call函數將ClassA的東西都放入ClassB中,於是ClassB便繼承了ClassA的屬性color。
js 如何控制class?
script type=”text/javascript”
window.onload = function() {
var abcs = document.getElementsByClassName(“abc”);
for(var i = 0; i abcs.length; i++) {
abcs[i].style.width = “50%”;
}
};
/script
注意:上面的代碼不支持 IE 6/7,因為 IE 6/7 不支持 getElementsByClassName。
下面的代碼支持 IE 6/7,使用 getElementsByTagName 查找 div,再查找 abc
script type=”text/javascript”
window.onload = function() {
var divs = document.getElementsByTagName(“div”);
for(var i = 0; i divs.length; i++) {
var classes = divs[i].className.split(” “);
for(var a = 0; a classes.length; a++) {
if(classes[a] === “abc”) {
divs[i].style.width = “50%”;
break;
}
}
}
};
/script
如何在JS中定義CSS
var domObj = document.getElementById(“tagId”);
//使用domObj.style來設置css:
domObj.style.backgroundColor=”#000″;//對應style里 background-color
domObj.style.fontSize=”#000″;//對應style里 font-size
//如果對這個表不太清楚可以在w3c上查一下
//但是一般有個規律就是,首單詞小寫 「-」後面的第一個字母大寫,如:font-size 就是fontSize
如果是想更換標籤的class的話,可以使用
domObj.className = “other_class”;
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/300743.html