原生JS中DOM元素的操作

获取dom

document.getElementsByClassName ( “class”);
document.getElementById( “id” )
document.getElementsByName(" name");
document.getElementsByTagName(“TagName”);
ocument.querySelector(".btnlist");
document.querySelectorAll("#btn");

修改属性

ele.style.syleName=styleValue

.获取对象的属性

btn1[0].style.height)

.js获取非行内样式属性

window.getComputedStyle(btn1[0]).width

innerHTML

语法: ele.innerHTML
功能:返回ele元素开始和结束标签之间的HTML(获取标签的内容)
语法: ele.innerHTML=" html”
for(i=0,len=lis.length;i<len;i++){
        console.log(lis[i].innerHTML);
        lis[i].innerHTML =lis[i].innerHTML+'程序';
        //className  返回ele元素的class属性
       lis[1].className ="current";  //className是重新设置类,替换元素本身的class
    }

dom 属性设置与获取

     <!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>Dom获取属性getAttribute</title>
</head>
<body>
    <p id="text"  class="text2" align="center" data-type="title" >文本</p>
    <input type="text" name="user" id="user" value="user" vaildata="user2">
    <script>
        //获取属性 getAttribute
    var p=document.getElementById("text");  // 获取p标签的内容
        console.log(p.id);  // text
        console.log(p.align);  // center
        console.log(p.className );  // text2   //class的获取使用className
        console.log(p.getAttribute("data-type") );  //   title
        console.log(p.getAttribute("class") );  //   text2
    var input=document.getElementById("user")    ;
         console.log(input.id);  // user
         console.log(input.getAttribute ("vaildata"));  // user2

         //设置属性  setAttribute
         //给p设置一个data-color 属性
         p.setAttribute("data-color","red");
         //给p设置一个irland 属性
         input.setAttribute("irland","false");

        //删除属性 removeAttribute
        //给p删除align属性
        p.removeAttribute("align");
        //给input删除name属性
        input.removeAttribute("name");
    </script>
</body>
</html>

Dom的HTML事件

DOM的鼠标事件

onload :页面加载时触发

onclick :鼠标点击时触发

onmouseover :鼠标滑过时触发

onmouseout :鼠标离开时触发

onfocus :获得焦点时触发 ,事件用于:
input标签type为text、password; textarea;

onblur :失去焦点时触发

onchange:域的内容改变时发生,一般作用于select或checkbox或radio

onsubmit:表单中的确认按钮被点击时发生:不是加在按钮上,而是在表单上(from)。

onmousedown : 鼠标按钮在元素上按下时触发.

onmousemove :在鼠标指针移动时发生

onmouseup :在元素上松开鼠标按钮时触发

关于this指向
在事件触发的函数中, this是对该DOM对象的引用。
键盘事件

onkeydown(键盘按下)

onkeyup(键盘抬起)

onkeypress(按键事
表单事件

onfocus(获得焦点)

onblur(失去焦点)

浏览器事件
window事件 :

onload(加载完成事件)
onerror(报错事件)
onresize :当调整浏览器窗口的大小时触发
onscroll :(滑动事件)拖动滚动条滚动时触发
触屏事件
touch(触屏)
touchstart (开始触屏 )
touchmove(触屏移动)
touchend(触屏结束)

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>HTML事件</title>
    <style>
        .btn{
            width:140px;
            height:30px;
            line-height: 30px;
            font-size:14px;
            text-align: center;
            background-color: #7d83ff;
            color:#fff;
            border-radius: 5px;
            margin-top:30px;
            cursor: pointer;
        }
    </style>
</head>
<body>
    <!--onclick:鼠标滑过时触发-->
    <input type="button " value="弹 出"  onclick=" alert('我是一个按钮')">;
    <!--onmouseover:鼠标滑过调用onmouseover函数-->   <!--onmouseout :鼠标离开时触发-->
    <div id="btn" class="btn" onmouseover="mouseoverFn(this,'#f00')" onmouseout="mouseoutFn(this,'#0f0')">
        开始</div>
    <div id="btn" class="btn" onmouseover="mouseoverFn(this,'pink')" onmouseout="mouseoutFn(this,'#ff0')">
        结束</div>
<script>
    //传参   onmouseover="mouseoverFn(this,'#0f0')" 给  mouseoverFn(btn,bgColor)传参
    function mouseoverFn(btn,bgColor){
        //鼠标滑过,背景变为红色
        btn.style.background=bgColor ;
    }
    //传参   onmouseout="mouseoutFn(this,'#0f0')" 给  mouseoutFn(btn,bgColor)传参
    function mouseoutFn(btn,bgColor){
        //鼠标滑过,背景变为#00f
        btn.style.background=bgColor;
    }
 /*  如何给dom元素添加事件
  1.常规添加  直接在标签上添加事件
 */
    function btn1(a){
        console.log(a);
    }
    /*2.动态给dom添加事件*/
    var btn =document.getElementById ("btn2");
   btn.onmouseover=function(){
     btn.style.background ="red";
   };
   btn.onmouseout=function(){
       btn.style.background =" buttonface";
   };
  btn.onclick =showbtn; //不能加小括号
    function showbtn(){
        console.log(2);
    }
   /*var btn3 =document.getElementsByClassName("btn_3");
   btn3[0].onclick=function(){
       console.log(3);
   }*/

    //事件的监听
   //匿名函数
  /* var btn3=document.getElementById ("btn3");
    btn3.addEventListener("click",function (){
        console.log(3);
    });*/
   //自定义函数
   btn3.addEventListener("click",minibtn);
           function minibtn(){
       console.log(3);
   }
   var squ =document.getElementById ("black");

</script>
</body>
</html>

原链接

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,470评论 1 11
  • _________________________________________________________...
    fastwe阅读 274评论 0 0
  • 事件流 Click Me 冒泡型事件:事件按照从最特定的事件目标到最不特定的事件目标的顺序触发。触发的顺序是:di...
    醋留香阅读 787评论 0 1
  • DOM操作 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。HTML...
    垃圾桶边的狗阅读 901评论 0 0
  • JS --- 事件,BOM,DOM 一、 事件 事件(Event)是 JavaScript 应用跳动的心脏 ,进行...
    小山居阅读 410评论 0 1