JS 章节① 基础入门

  • 1 JS 中修改元素的类名: 可以通过className修改,不能使用class
        function toRed() {
            var tobox = document.getElementById('box1');
            tobox.className = 'tmpBox';
        }
  • 2 函数传参
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>02-函数传参数</title>
    <style>
        #div1{width: 200px; height: 200px; border: 1px  solid #000;}
    </style>
    <script>
        function setColor(color) {
            var oDiv = document.getElementById('div1');
            oDiv.style.backgroundColor = color;
        }
    </script>
</head>
<body>
<input type="button" value="变绿" onclick="setColor('green')">
<input type="button" value="变黄" onclick="setColor('yellow')">
<input type="button" value="变黑" onclick="setColor('black')">
<div id="div1"></div>
</body>
</html>
函数传参:颜色

3修改属性的第二种方法:(<a>要修改的属性不固定时使用</a>)

可以通过 oDiv.style[属性名字] = value;来动态修改属性和值

                          //括号里放的是变量
       function setStyle(propertyName,value) { 
          var oDiv = document.getElementById('div1');
          oDiv.style[propertyName] = value;
      }
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <style>
        #div1{
            width: 100px;height: 100px;border: 1px solid #000;background-color: skyblue;
        }
    </style>
    <script>
        function setStyle(propertyName,value) {
            var oDiv = document.getElementById('div1');
            oDiv.style[propertyName] = value;
        }
    </script>
</head>
<body>
<input type="button" value="变高" onclick="setStyle('height','200px')">
<input type="button" value="变宽" onclick="setStyle('width','200px')">
<input type="button" value="变红" onclick="setStyle('background','red')">
<div id="div1"></div>
</body>
</html>
修改属性的第二种方法

4.style和className的区别

元素.style.属性 = xxx;是修改的行间(行内)样式,它的优先级比较高 !!! 例如:oDiv.style.backgroundColor = 'red';
className : 可以通过指定的类名,去找到对应的样式;
但是如果使用了style之后,再使用className指定样式,就会没有效果!!!!

注意:要么都是用style设置样式,要么单独使用className指定样式,不可混合使用,会有未知的错误发生!

5.提取行间事件

window.onload 页面加载完成时才执行
行为、样式、结构三者分离: JS CSS HTML 分离

  • 提取事件
  • 为元素添加事件
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>05-提取行间事件</title>
    <script>
        //window.onload 页面加载完成时才执行
        window.onload = function () {
            var oBtn = document.getElementById('btn1');
            //给元素添加事件
            oBtn.onclick = function () {  //匿名函数
                alert('我是打酱油的');
            };
        }
    </script>
</head>
<body>
<input id="btn1" type="button" value="按钮">
</body>
</html>

6.JS从父元素获取子元素

从下面代码中获取到input

<div id="box1">
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>
    <input type="checkbox"> <br>

</div>

放下如下:

window.onload =function ()
{
   var oDiv = document.getElementById('box1'); //现获取父元素div
   var inputs = oDiv.getElementsByTagName('input'); //再通过div获取到里面所有的input
}

7. innerHTML

用于设置容器标签的内容,可以是文字,也可以是 HTML(标签)。

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>08-innerHTML</title>
    <style>
        .content{
            width: 200px;
            height: 200px;
            border: 1px solid #000;
        }
    </style>
    <script>
        window.onload = function () {
            var oText = document.getElementById('textField');
            var oBtn = document.getElementById('button');
            var oContent = document.getElementById('div-content');
            oBtn.onclick = function () {
                oContent.innerHTML = oText.value;//可以往里放文字,标签等
            }
        }
    </script>
</head>
<body>
<input type="text" id="textField">
<input type="button" value="点击" id="button">
<div class="content" id="div-content"></div>
</body>
</html>
innerHTML:把输入框中的内容显示在下面的div中

8.字符串的拼接:

var str = '我叫小明'+12+'岁'+168+'2017'; >>>  结果:我叫小明12岁1682017
var num = '9+6等于'+(9+6); >>>  结果: 9 + 6 等于 15
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 我们首先要明白,我们给页面添加效果用到的js到底是什么?js其实包含三部分:dom 文档对象模型 bom 浏览...
    一直以来都很好阅读 877评论 0 0
  • 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。简单...
    舟渔行舟阅读 8,138评论 2 17
  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 2,936评论 0 8
  • 一、样式篇 第1章 初识jQuery (1)环境搭建 进入官方网站获取最新的版本 http://jquery.co...
    凛0_0阅读 3,681评论 0 44
  • 1. tab列表折叠效果 html: 能源系统事业部 岗位名称: 工作地点 岗位名...
    lilyping阅读 2,015评论 0 1

友情链接更多精彩内容