1、Window.document對象

來源:互聯網
上載者:User

標籤:

1、Window.document對象

一、找到元素:

    docunment.getElementById("id");根據id找,最多找一個;
    var a =docunment.getElementById("id");將找到的元素放在變數中;
    docunment.getElementByName("name");根據name找,找出來的是數組;
    docunment.getElementByTagName("name");根據標籤名找,找出來的是數組;
    docunment.getElementByClassName("name") 根據classname找,找出來的是數組;

二、操作內容:

 1. 非表單元素:

1)擷取內容:

alert(a.innerHTML);標籤裡的html代碼和文字都擷取了,標籤裡面的所有內容。

如:body中有這麼一個div:

<div id="me"><b>試試吧</b></div>

在script中用innerHTML擷取div中的內容:

    var a= document.getElementById("me");    alert(a.innerHTML);

結果如:

 

 

alert(a.innerText);只取裡面的文字
    alert(a.outerHTML);包括標籤本身的內容(簡單瞭解)

2)設定內容:

a.innerHTML = "<font color=red >hello world </font>";

如果用設定內容代碼結果如下,div中的內容被替換了:

 

a.innerText會將賦的東西原樣呈現

清空內容:賦值個Null 字元串

2. 表單元素:

1)擷取內容,有兩種擷取方式:

var t = document.f1.t1; form表單ID為f1裡面的ID為t1的input;
    var t = document.getElementById("id"); 直接用ID擷取。

alert(t.value); 擷取input中的value值;
    alert(t.innerHTML); 擷取<textarea> 這裡的值 </textarea>;

2)設定內容: t.value="內容改變";

3. 一個小知識點:

<a href="http://www.baidu.com" onclick ="return false">轉向百度</a> ;加了return flase則不會跳轉,預設是return true會跳轉。按鈕也一樣,如果按鈕中設定return flase 則不會進行提交,利用這個可以對提交跳轉進行控制。

三、操作屬性

首先利用元素的ID找到該元素,存於一個變數中:

var a = document.getElementById("id");

然後可以對該元素的屬性進行操作:

a.setAttribute("屬性名稱","屬性值"); 設定一個屬性,添加或更改都可以;

a.getAttribute("屬性名稱");擷取屬性的值;

a.removeAttribute("屬性名稱");移除一個屬性。

例子1:做一個問題,如果輸入的答案正確則彈出正確,錯誤彈出錯誤;

這裡在text裡面寫了一個daan屬性,裡面存了答案的值,點擊檢查答案的時候check輸入的內容和答案是否一樣:

Body中代碼:

<form>中華民國成立於哪一年?<input type="text" daan="1912年" value="" id="t1" name="t1" /><input type="button" onclick="check()" id="t2" name="t2" value="檢查答案" /></form>

JS中的代碼:

function check(){    var a=document.getElementById("t1");    var a1=a.value;    var a2=a.getAttribute("daan");    if(a1==a2)    {        alert("恭喜你答對了!");    }    else    {        alert("笨蛋!");    }}

 

回答正確時的結果:

 

 

例子2: 同意按鈕,倒計時10秒,同意按鈕變為可提交的,這裡用了操作屬性:disabled,來改變按鈕的狀態,當disabled=”disabled”時按鈕不可用。

body中的代碼:

<form><input type="submit" id="b1" name="b1" value="同意(9)" disabled="disabled" /></form>

JS中的代碼:

var n=10;var a= document.getElementById("b1");

function bian(){    n--;    if(n==0)    {        a.removeAttribute("disabled");        a.value="同意";        return;    }    else    {        a.value= "同意("+n+")";        window.setTimeout("bian()",1000);    }}window.setTimeout("bian()",1000);

啟動並執行結果:

 

四、操作樣式

首先利用元素的ID找到該元素,存於一個變數中:

var a = document.getElementById("id");

然後可以對該元素的屬性進行操作:

a.style="" ; 操作此ID樣式的屬性。

樣式為CSS中的樣式,所有的樣式都可以用代碼進行操作。

document.body.style.backgroundColor="顏色"; 整個視窗的背景色。

操作樣式的class:a.className="樣式表中的classname" 操作一批樣式

例子1:展示圖片的自動和手動切換;

Body中的代碼,做一個有背景圖片的div和兩側的控制對象:

             <div id="tuijian" style=" background-image:url(images/tj1.jpg);">            <div class="pages" id="p1" onclick="dodo(-1)"></div>            <div class="pages" id="p2" onclick="dodo(1)"></div>        </div>

樣式表中的代碼:

<style type="text/css">*{    margin:0px auto;    padding:0px;    font-family:"微軟雅黑";}#tuijian{    width:760px;    height:350px;    background-repeat:no-repeat;}.pages{    top:200px;        background-position:center;    background-repeat:no-repeat;    opacity: 0.4;    width: 30px;    height:60px;    }#p1{    background-image:url(imges/prev.png);    float:left;    margin:150px 0px 0px 10px;    }#p2{    background-image:url(imges/next.png);    float:right;    margin:150px 10px 0px 0px;}</style>

JS中的代碼,這裡主要是每隔3秒中調用一下huan()函數,來將背景圖片的樣式修改,在點擊左右切換的時候變為手動切換,自動切換停止:

<script language="javascript">

var jpg =new Array();jpg[0]="url(imges/tj1.jpg)";jpg[1]="url(imges/tj2.jpg)";jpg[2]="url(imges/tj3.jpg)";

var tjimg = document.getElementById("tuijian");

var xb=0;

var n=0;

function huan(){    xb++;    if(xb == jpg.length)    {        xb=0;    }        tjimg.style.backgroundImage=jpg[xb];    if(n==0)    {    var id = window.setTimeout("huan()",3000);    }        }

function dodo(m){       n=1;    xb = xb+m;    if(xb < 0)    {        xb = jpg.length-1;    }    else if(xb >= jpg.length)    {        xb = 0;    }    tjimg.style.backgroundImage=jpg[xb];}window.setTimeout("huan()",3000);</script>

效果如:

 

五、相關元素操作:

var a = document.getElementById("id");找到a;

var b = a.nextSibling,找a的下一個同輩元素,注意包含空格;

var b = a.previousSibling,找a的上一個同輩元素,注意包含空格;

var b = a.parentNode,找a的上一級父級元素;

var b = a.childNodes,找出來的是數組,找a的下一級子項目;

var b = a.firstChild,第一個子項目,lastChild最後一個,childNodes[n]找第幾個;

alert(nodes[i] instanceof Text); 判斷是不是文本,是返回true,不是返回flase,用if判斷它的值是不是false,可以去除空格。

 

 

 

六、元素的建立、添加、刪除:

var a = document.getElementById("id");找到a;

var obj = document.createElement("標籤名");建立一個元素 

obj.innerHTML = "hello world";添加的時候首先需要建立出一個元素。

a.appendChild(obj);向a中添加一個子項目。

a.removeChild(obj);刪除一個子項目。

列表中a.selectedIndex:選中的是第幾個;

//a.options[a.selectIndex]按下標取出第幾個option對象

七、字串的操作:

var s = new String(); 或var s ="aaaa";

var s = "hello world";

alert(s.toLowerCase());轉小寫 toUpperCase() 轉大寫

alert(s.substring(3,8));從第三個位置截取到第八個位置

alert(s.substr(3,8));從第三個位置開始截取,截取八個字元長度,不寫後面的數字是截到最後.

s.split(‘‘);將字元換按照指定的字元拆開,放入數組,自動排序

s.length是屬性

s.indexOf("world");world在字串中第一次出現的位置,沒有返回-1

s.lastIndexOf("o");o在字串中最後一次出現的位置

八、日期時間的操作

var d = new Date();目前時間

d.setFullYear(2015,11,6);/*在想要設定的月份上減1設定*/

d.getFullYear:取年份;

 d.getMonth():取月份,取出來的少1; 

d.getDate():取天; 

d.getDay():取星期幾

d.getHours():取小時; 

d.getMinutes():取分鐘;d.getSeconds():取秒

d.setFullYear():設定年份,設定月份的時候注意-1。

九、數學函數的操作

Math.ceil();大於當前小數的最小整數

Math.floor();小魚當前小數的最大整數

Math.sqrt();開平方

Math.round();四捨五入

Math.random();隨機數,0-1之間

十、小知識點

外面雙引號,裡面的雙引號改為單引號;

在div裡面行高設定時,無論設定多麼高,所佔用的行預設在中間位置(div上下地區內中間——【預設】垂直置中)。

文字框取出來的值是字串,需要用parseint()轉化為數字

s.match(reg); s代表一個字串,reg代表一個字串,兩者進行匹配,如果兩個字串不匹配,返回一個null。

 

 

 

三、document:
1.找
var d = document.getElementById("元素的ID");
var d = document.getElementsByName("元素名稱")
var d = document.getElementsByTagName("標籤名")

2.操作元素內容:
(1)表單元素:文本(input:type=text,input:type=password;textarea;input:type=hidden)按鈕(submit,reset,button image)選擇(radio,checkbox,select,file)
d.value=“xxxx”;
var s = d.value;

(2)非表單元素:h1...h6,p,div,ul,ol,li
d.innerHTML = xxxx;
var s = d.innerHTML;

3.操作元素屬性:
d.setAttribute(名,值)
var s = d.getAttribute(名)
d.removeAttribute(名);

4.操作元素樣式:
(1)內聯樣式:
d.style.backgroundColor = "#FFFF00";
var s = d.style.backgroundColor;
(2)class屬性:
d.className=""
5.操作相關元素:
父級,子,兄,弟

1、Window.document對象

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.