zoukankan      html  css  js  c++  java
  • JavaScript学习(一)——es,bom,dom

    JavaScript主要由ECMAScript,BOM,DOM组成。

    ECMAScript:语法规则

    BOM:浏览器对象模型(使用js去操作浏览器)

    DOM:文档对象模型(使用js去操作html)

    BOM对象有哪些?

    对象名称 说明
    window 窗口对象,可以控制当前窗口,或打开新的窗口
    screen 屏幕对象,获取屏幕相关信息
    navigator 浏览器对象,通过这个对象可以判断用户使用的浏览器
    history 历史对象,前进或后退一个页面
    location 地址对象,可以获取当前url信息
    JavaScript计时事件 在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行

    localStorage

    SessionStorage

    储存对象,可以用来储存数据,和cookie相似,区别是它是为了更大的容量储存设计的,使用更方便

    弹窗:

    弹窗 语法 说明
    警告框 window.alert() 用于确保用户可以得到某些信息
    确认框 window.confirm() 用于验证是否接受用户操作
    提示框 window.prompt() 用于提示用户在进入某个页面前输入某个值

    location:

    获取当前页面地址,并把浏览器重定向到新的页面

    语法 说明
    location.href 返回当前页面的url
    location.pathname 返回url的路径名
    location.assign() 加载新的文档(跳转页面)
    <html>
    <head>
    	<title>gallery</title>
    </head>
    <body>
    	<button onclick="myFunction()">新的html跳转</button>
    </body>
    </html>
    <script>
    	//document.write(location.href);//打印链接
    	//document.write(location.pathname);打印路径
    	function myFunction(){
    		location.assign("http://pws.paic.com.cn/m/work_gonggong.html");//跳转新的html
    	}
    </script>
    

      

    计时事件:

    语法 说明
    setInterval() 间隔指定的毫秒数,不停执行代码
    clearInterval() 用于停止setInterval()方法执行的额函数代码
    setTimeout() 暂停指定的毫秒数后执行指定的代码
    clearTimeout() 用于停止执行setTimeout()方法的函数代码
    <html>
    <head>
        <title>gallery</title>
    </head>
    <body>
        <button onclick="start()">弹出</button>
        <button onclick="stop()">停止</button>
        <button onclick="start1()">弹出1</button>
        <button onclick="stop1()">停止1</button>
    </body>
    </html>
    <script>
        var a;
        var b;
        function start(){
            a=setInterval("alert('间隔一秒弹出内容');",1000);//一直执行
        }
        function stop(){
            clearInterval(a);
        }
        function start1(){
            b=setTimeout(function(){
                alert("等待三秒之后弹出内容");//只执行一次
            },3000);
        }
        function stop1(){
            clearTimeout(b);
        }
    </script>

    DOM的普通方法:

    查找html元素:

    语法 说明 注意点
    document.getElementById 通过id属性获取对象 可以直接绑定获取的对象
    document.getElementsByTagName 通过标签名获取对象 需要数组下标位
    document.getElementsByClassName 通过Class属性获取对象 需要数组下标位


    改变html元素:

    语法 说明
    document.write() 改变HTML输出流
    对象.innerHTML = 新的HTML 改变HTML内容
    对象.attribute(比如,src,height) = 新属性值 改变HTML属性

    改变css样式:

    语法 说明
    对象.style.property=新样式 更改对象css属性对应的样式
    <html>
    <head>
        <title>gallery</title>
    </head>
    <body>
        <p>输出内容</p>
        <p id="old">old</p>
        <img src="./1.jpg" width="200px" height="200px" id="img">
    </body>
    </html>
    <script>
        document.write("你好");//输出
        document.getElementById("old").innerHTML="new";//更改内容
        document.getElementById("img").src = "./2.jpg";//替换属性
        document.getElementsByTagName("p")[0].style.background = "#aaa";//更改css样式
        </script>

    另外对于dom来说,是一个结点的树形结构。

    比如document——> <html> ——> <head>/<body>

                                                                |            |

                                                               v            v

                                                             <title>      <p>/<a>……

    因此对于我们来说,可能需要需要获取结点的相应信息。

    nodeValue(节点值),nodeName(节点名称),nodeType(节点类型)

    其中,对于节点类型,有如下五种,我们可以通过它的默认类型值进行判断。

    结点类型 结点类型值(nodeType)
    元素element 1
    属性attr 2
    文本text 3
    注释comments 8
    文档document 9
  • 相关阅读:
    【leetcode】106. Construct Binary Tree from Inorder and Postorder Traversal
    【leetcode】105. Construct Binary Tree from Preorder and Inorder Traversal
    【leetcode】236. Lowest Common Ancestor of a Binary Tree
    【leetcode】235. Lowest Common Ancestor of a Binary Search Tree
    【leetcode】352. Data Stream as Disjoint Intervals
    【leetcode】897. Increasing Order Search Tree
    【leetcode】900. RLE Iterator
    BEC listen and translation exercise 26
    BEC listen and translation exercise 25
    BEC listen and translation exercise 24
  • 原文地址:https://www.cnblogs.com/hekiraku/p/12361806.html
Copyright © 2011-2022 走看看