如何用原生js編程(如何用原生js編程教程)

本文目錄一覽:

請問如何使用原生JS實現以下功能,以及他的思路是如何的

這個簡單,使用for循環就可以了。

!DOCTYPE html

html

head

meta charset=”utf-8″/

titletest/title

/head

body

div id=”box”00/div

script type=”text/javascript”

function liang(n){

var s = 1;

for(var i = 1; i = n; i++){

s *= i;

console.log(‘s==’, s);

}

return s;

}

var a = liang(6);

document.getElementById(‘box’).innerHTML = a;

/script

/body

/html

還有一個方法也可以:

function hermit(num){

if(num == 1 || num === 0){

return 1;

}else{

return (num * hermit(num -1));

}

}

var a = hermit(6);

document.getElementById(‘box’).innerHTML = a;

原生js操作DOM元素的一些使用

方法一:

使用DOM.setAttribute(“class”,”類名”)

方法二:

DOM.classList.add(“類名”)

方法一給DOM元素添加類名會覆蓋原有的類名

方法二 可以給DOM元素添加一個類名後 還可以在繼續給DOM元素添加新的類名 並且不會覆蓋已有的類名

概念:把要添加的節點添加到指定父級裏面的最後面,所以也叫追加。

使用方式:fatherdom.appendChild( insertdom )。

兼容性:所有瀏覽器都支持此方法。

概念:把要插入的節點添加到指定父級裏面的指定節點之前。

使用方式:fatherdom.insertBefore( insertdom,chosendom )。

兼容性:所有瀏覽器都支持此方法,但是值得注意的是,如果第二個參數節點不存在,在IE和Safari下會把要添加的節點使用appendChild()方法追加到指定父級中,而其他主流瀏覽器(Firefox、Chrome、Opera等)下會報錯,所以在插入節點的時候,需要先判斷第二個參數節點是否存在

效果

注意:很多人都認為設置disabled=”true”是為啟用,設置為「false」時為禁用,這是錯的。

使用原生JS操作網頁的幾個例子

原生js操作網頁

emmm

添加網頁元素

移除網頁元素

代碼

!DOCTYPE html

html lang=”en”

head

    meta charset=”UTF-8″

    titleTitle/title

/head

style

    div{

        border: 1px solid black;

        width: 100px;

        height: 100px;

        text-align: center;

    }

/style

body

divdiv1/div

divdiv2/div

script

    var div = document.createElement(“div”);

    div.innerText = “這是使用js添加的元素”;

    //添加一個div元素

 document.body.appendChild(div);

    alert(“3秒後移除div1”);

    //移除html元素

 setTimeout(function () {

        var divList = document.getElementsByTagName(“div”);

        divList[0].remove();

    },3000);

/script

/body

/html

這兩個很基礎,其實所有其他js庫(jquery之類的)能做的事情原生js都能做。

如何用原生js編寫動列表格

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

html

head

titleJs動態生成表格/title

style type=”text/css”

table{font-size:14px;}

/style

/head

body

script language=”javascript”

function tableclick(name1,name2,name3){

Trow=name1.value;

Tcol=name2.value;

Tv=name3.value;

if ((Trow==””) || (Tcol==””) || (Tv==””)){

alert(“請將製作表格的條件填寫完整”);

}

else{

r=parseInt(Trow);

c=parseInt(Tcol);

Table1(r,c,Tv);

}

}

function tablevalue(a,ai,rows,col,str){

int1=a.length;

for (i=0;irows;++i){

for (j=0;jcol;++j){

if ((j==0)(ai=int1)){break;}

if (ai=int1){

str=str+”td scope=’col’ /td”;

}

else{

if (j==0){

str=str+”trth scope=’col’ “+(a[ai++])+”/th”;

}

else{

if (j==col-1){

str=str+”td scope=’col’ “+(a[ai++])+”/td”;

}

else{

str=str+”td scope=’col’ “+(a[ai++])+”/td”;

}

}

}

}

str=str+”/tr”;

}

return str;

}

function Table1(row,col,Str1){

var str=””;

a=new Array();

s=new String(Str1);

a=s.split(“#”);

int1=a.length;

ai=0;

if (col=int1){

str=str+”table width=’300′ border=’4′”;

for (i=0;icol;++i){

if (i==0){

str=str+”trth scope=’col’ “+(a[ai++])+”/th”;

}

else{

if (i==(col-1)){

str=str+”th scope=’col’ “+(a[ai++])+”/th/tr”;

}

else{

str=str+”th scope=’col’ “+(a[ai++])+”/th”;

}

}

}

if (int1col){

if (row1){

str=tablevalue(a,ai,row-1,col,str);

}

}

str=str+ “/table”;

aa.innerHTML=str;

}

}

/script

form name=”form1″ method=”post” action=””

pb行數:/b

input name=”name1″ type=”text” style=”width:40px” value=”4″

b列數:/b

input name=”name2″ type=”text” style=”width:40px” value=”4″

input type=”button” name=”Submit3″ value=”生成表格”

onClick=”tableclick(document.form1.name1,document.form1.name2,document.form1.name3)”/p

pb align=”top”表值:/b/p

p

input name=”name3″ wrap=”VIRTUAL” style=”width:520px ”

value=”COL1#COL2#COL3#COL4#ROW1#A1#A2#a3#ROW2#B1#B2#B3#ROW3#C1#C2#C3″

/p

/form

div id=”aa”/div

/body

/html

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/280556.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-21 13:05
下一篇 2024-12-21 13:15

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • MQTT使用教程

    MQTT是一種輕量級的消息傳輸協議,適用於物聯網領域中的設備與雲端、設備與設備之間的數據傳輸。本文將介紹使用MQTT實現設備與雲端數據傳輸的方法和注意事項。 一、準備工作 在使用M…

    編程 2025-04-29
  • Python3.6.5下載安裝教程

    Python是一種面向對象、解釋型計算機程序語言。它是一門動態語言,因為它不會對程序員提前聲明變量類型,而是在變量第一次賦值時自動識別該變量的類型。 Python3.6.5是Pyt…

    編程 2025-04-29
  • Deepin系統分區設置教程

    本教程將會詳細介紹Deepin系統如何進行分區設置,分享多種方式讓您了解如何規劃您的硬盤。 一、分區的基本知識 在進行Deepin系統分區設置之前,我們需要了解一些基本分區概念。 …

    編程 2025-04-29
  • 如何用Python寫愛心

    本文將會從多個方面闡述如何用Python語言來畫一個美麗的愛心圖案。 一、準備工作 在開始編寫程序之前,需要先理解一些編程基礎知識。首先是繪圖庫。Python有很多繪圖庫,常見的有…

    編程 2025-04-29
  • 如何用Python統計列表中各數據的方差和標準差

    本文將從多個方面闡述如何使用Python統計列表中各數據的方差和標準差, 並給出詳細的代碼示例。 一、什麼是方差和標準差 方差是衡量數據變異程度的統計指標,它是每個數據值和該數據值…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Qt雷達探測教程

    本文主要介紹如何使用Qt開發雷達探測程序,並展示一個簡單的雷達探測示例。 一、環境準備 在開始本教程之前,需要確保你的開發環境已經安裝Qt和Qt Creator。如果沒有安裝,可以…

    編程 2025-04-29
  • 猿編程python免費全套教程400集

    想要學習Python編程嗎?猿編程python免費全套教程400集是一個不錯的選擇!下面我們來詳細了解一下這個教程。 一、課程內容 猿編程python免費全套教程400集包含了從P…

    編程 2025-04-29
  • Python煙花教程

    Python煙花代碼在近年來越來越受到人們的歡迎,因為它可以讓我們在終端里玩煙花,不僅具有視覺美感,還可以通過代碼實現動畫和音效。本教程將詳細介紹Python煙花代碼的實現原理和模…

    編程 2025-04-29

發表回復

登錄後才能評論