JavaScript初步认识

一 。 JavaScrip的嵌入方式:

  ----- <li onclick="alert(‘Hello‘)">条目一</li>         内嵌在html中

  ------<li onclick="init()">条目一</li>

      <script>
        function init(){
          alert("Hello");
          }
      </script>                                            调用script标签中的方法

  -------<script href="1.js"></script>                 调用外部的js代码

二。 javascrip的组成

    ECMAScript(规范) + BOM(浏览器对象模型) + DOM(文档对象模型)

三。javascript的层次结构

        -------- screen

        -------- navigator

    window -------- document

        -------- history

      --------  location

        -------- .....

四。节点对象的获取方式

  document.getElementById("id");    通过ID获取指定节点对象

  document.getElementByTagName("TagName");      通过节点名称获取节点对象

document.getElementByName("classname")        通过class=“username”指定的节点获取该节点,限定为表单节点

 

  document.form[]      获取页面所有的表单对象 <form>

  document.images[]      获取页面所有img标签对象 <img>

  document.links[]        获取页面所有超链接标签对象<a>

  利用节点关系获取(属性)

    parentNode(父节点)

    childNodes(子节点)

    firstChild(大儿子节点)

    lastChild (小儿子节点)

    nextSibling(下一个兄弟节点)

    previousSibling(上一个兄弟节点)

 五。 节点对象分类:

    元素节点  文本节点  属性节点

  六。 节点属性   

  a. nodeName(节点名称)
    元素节点的 nodeName 是标签名称
    属性节点的 nodeName 是属性名称
    文本节点的 nodeName 永远是 #text
    文档节点的 nodeName 永远是 #document

  b. nodeValue(节点值)
    对于文本节点,nodeValue 属性包含文本。
    对于属性节点,nodeValue 属性包含属性值。
    nodeValue 属性对于文档节点和元素节点是不可用的。

  c. nodeType(节点类型) : nodeType 属性可返回节点的类型。
    标签节点的类型值是 1
    属性节点的类型值是 2
    文本节点的类型值是 3

七。节点的增删改查操作

  a. 节点的查操作如上

  b. 节点的增加操作    appendChild()或 innerHtml方式

  c. 节点的删操作       removeChild()

  d.节点改操作          replaceChild( nodeA,nodeB)  用nodeA节点替换节点nodeB

  e. 节点创建操作      document.createElement() : 创建一个标签节点     docuemnt.createTextNode("内容") :创建一个文本节点

八。 javascript代码设置定时器

    var timer = setTimerOut(function() , time);  调用一次

    var timer = setInterval(func(), time);    反复被调用

      ---clearTimeout(timer)  移除由setTimeout()创建的定时器

      ---clearInterval(timer)  移除由setInterval()创建的定时器

九。节点对象在做动画时注意:

   1. offsetLeft  offsetTop offsetWidth offsetheigh  获取元素的左边距 右边距 宽度(包括border padding) 高度(包括border padding)

   2. 元素没有被style->position属性修饰,改变其left,right属性不生效,但可以通过marginLeft marginTop可以改变位置。

     3. 在页面内置的style属性中修饰的属性是无法通过javascrip直接拿到,如:    

      <head>
        <meta charset="UTF-8">
        <title>test</title>
        <style>
          li{
            width: 160px;
            height: 80px;
            background-color: yellow;
            margin-top: 50px;
            text-align: center;
          }
        </style>
      </head>

      <javascript>     

        function getWidth(){
          var div = document.getElementById("id");
          return div.style.width;
          }

      <javascript>

这种方式是无法拿去到width的值,因为他被定义在css样式表中。但是可以通过如下方式获取:

    function getStyle(obj,attr){

      // 兼容IE
      if(obj.currentStyle){
        return obj.currentStyle[attr];
      }else{

        //兼容市面上大部分的浏览器
        return getComputedStyle(obj,false)[attr];
        }
      }

十: javascript的演示代码

  

<!DOCTYPE html>
  <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>test</title>
    <style>
      li{
      width: 160px;
      height: 80px;
      background-color: yellow;
      margin-top: 50px;
      text-align: center;
       }
    </style>
  </head>
    <script href="1.js">
      window.onload = function(){
      var ali = document.getElementsByTagName("li");
      for(var i=0;i<ali.length;i++){
        ali[i].onmouseover = function(){
        startMove(this,400);
        }
      ali[i].onmouseout = function(){
      startMove(this,160);
      }
     }
    }

    function startMove(obj,Itarger){
    clearInterval(obj.timer);
    obj.timer = setInterval(function(){
    var currentwidth = obj.offsetWidth;
    var speed = (Itarger - currentwidth)/10;
    speed = speed>0? Math.ceil(speed):Math.floor(speed);
    if(currentwidth == Itarger){
      clearInterval(obj.timer);
     }else{
      obj.style.width = currentwidth + speed +"px";
     }
   },30);
  }

    function getStyle(obj,attr){
    if(obj.currentStyle){
      return obj.currentStyle[attr];
    }else{
    return getComputedStyle(obj,false)[attr];
  }
}
</script>
<body>
<ul>
<li>条目一</li>
<li>条目二</li>
<li>条目三</li>
<li>条目四</li>
</ul>

</body>
</html>

    

时间: 2024-10-25 08:10:54

JavaScript初步认识的相关文章

HTML 5 JavaScript初步 编译运行.doc

编译运行 解释运行 JavaScript:只有一种变量类型,var.数据类型:整型,小数,字符串,布尔型 1.如何把数值型字符串变成数字型: parseInt("字符串")——把字符串变成整型 parseFloat("字符串")——把字符串变成小数 2.如何判断一个变量是不是个数字? var a = isNaN(b);

javascript初步了解

0.1   <script> 和 </script> 会告诉 JavaScript 在何处开始和结束. <script> 和 </script> 之间的代码行包含了 JavaScript: 那些老旧的实例可能会在 <script> 标签中使用 type="text/javascript".现在已经不必这样做了.JavaScript 是所有现代浏览器以及 HTML5 中的默认脚本语言. 0.2 脚本可位于 HTML 的 <

JavaScript初步+基本函数

JavaScript基本写法 <script type="text/javascript">function rec(){ //函数定义var mymessage=confirm("你是女人嘛") ;if(mymessage==true){document.write("你是女士!");}else{document.write("你是男士!");}} </script> 函数使用的一种方法 <bo

JavaScript初步入门

大写函数:".toUpperCase();" "My name is hheehehehh".toUpperCase(); PS:比C++容易多了!!! 输入输出样例: 布尔运算符(判断真假)如: 具体代码如下: var isWeekend = true; var needToShowerToday = !isWeekend; needToShowerToday; 为数组加入元素: var animals = []; animals.push("cat&q

麦子学院-Web前端开发工程师系列培训教程

HTML+CSS基础入门1.课程介绍2.html的语法3.html的基本结构4.html的文档设置标记上(格式标记)5.html的文档设置标记下(文本标记)6.html图像标记img7.html超链接的使用8.html表格相关的标记9.html表格实战<简单的网页布局>10.html框架详解与框架布局实战11.HTML表单设计(上)12.HTML表单设计(下)13.使用CSS样式的方式14.定义CSS样式(CSS选择器)15.CSS常用属性(颜色属性)16.css常用属性(字体相关属性)17.

Python开发学习路线

Python , 是一种面向对象的解释型计算机程序设计语言,具有丰富和强大的库,Python 已经成为继JAVA,C++之后的的第三大语言. 特点:简单易学.免费开源.高层语言.可移植性强.面向对象.可扩展性.可嵌入型.丰富的库.规范的代码.大这里给家列出从Python入门到实战学习路线. 一.入门教程 1.Python 面向对象编程 2.jquery入门 3.HTML+CSS基础入门 4.Javascript初步 5.Python语言编程基础 二.初级教程 1.Git 与 GitHub 2.P

python学习之旅

一.入门 1.Python 面向对象编程 2.jquery入门 3.HTML+CSS基础入门 4.Javascript初步 5.Python语言编程基础 二.初级阶段 1.Git 与 GitHub 2.Python 爬虫基础 3.django进阶 4.django项目部署 5.ajax入门 6.django基础 7.Mysql基础 三.中级阶段  1.Linux基础 2.Python :socket and threading 3.使用pyqt开发windows gui程序及打包 4.Pytho

初学者如何迅速学习Python开发

首先告诉你的是,零基础学习开始学习Python 肯定难,Python的专业程度本身就不简单,学习这事本来就是一件非常煎熬的事情,人都不愿意学习,可是没办法,为了生存掌握一个技能,你必须学,如果你认真的对待,你就找不到高薪水的工作,所以首先学习Python意志,坚持非常重要,很多人放弃的原因根本就是缺乏这些素质. 零基础学习Python必须明确的几点: 1.明确你将来是做什么工作的,需要掌握哪些技能,很多人连这个就不知道就盲目的学,你首先清楚,现在公司需要什么人才,你应该奔着什么目标努力. 2.系

初步总结javascript中学习DOM之前的知识

嘿嘿,又到了周末时间,周六其实就是总结这周的学习的,记得周二周三刚开始接触javascript时间,还是不知道怎么学习的,就感觉找不到方向,那时间学习的只是总结了一些简单的定义或者是学习结构,今天就把这些重新练习了一下,感觉还是蛮容易找到学习的兴趣的,顿时就默默的开始了今天的练习过程.今天就总结下初步认识javascript时间的一些实例,记得前面总结的并不完全,所以在这里总结一下基本概念. 一.基本的认识一些类型和方法 <script> var colors = new Array(3);