html前端学习十:javascript简介 获取标签

javascript简介

  • JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。

直译式脚本语言:边执行,边编译

特点:
js是由unicode字符集编写的,完全支持中文(Unicode是Ascii和lation-1超集)

js注意事项;

  1. js严重区分大小写;

  2. 每段代码结束后需要加分号,表示一句代码解释;

  3. 构造函数首字母大写,再驼峰原则;

  4. 函数命名,首字母小写;

  5. 注释: //当行注释 /* */多行注释

  6. 三种执行方式:

    1. 内联方式:在标签上执行,不建议使用
     <div class="box" onclick="alert(1)"></div>    
    

    效果点击盒子,弹出1
    2. body > script
    3. 通过script src属性引用js脚本

    <script src="first-js.js"></script>
    

js获取节点对象

获取ID对象:
document.getElementById(“id名字”) 返回只有一个

<body>
    <div id="box"></div>
</body>
<script>
	alert(document.getElementById("box");)
	
</script>

获取class对象: 对象可以可以多个
document.getElementByClassName(“class名字”);
document.getElementsByClassName(""); 获取多个对象 仅支持IE9+ 返回一个列表——类数组


<body>
    <div class="parent" id="box"></div>
	<a class="parent" href="#"></a>
	<p class="parent"></p>
</body>
<script>
	// alert(document.getElementById("box");)
	alert(document.getElementsByClassName("parent")[0]);
</script>

获取标签对象
document.getElementsByTagName(“tag标签名字”) 通过Tag标签来获取元素 返回集合

<body>
    <div></div>
	<div></div>
	<div></div>
	<div></div>
</body>
<script>
    alert(document.getElementsByTagName("div").length); //返回div标签的长度
<script>

获取name属性的值
document.getElementsByName(“name属性”)

	<div name="username">1</div>
	<div name="brooks">2</div>
	<div name="password">3</div>
	<div name="username">4</div>
<script>	
alert(document.getElementsByName("username").length);	
</script>	


<script>	
alert(document.getElementsByName("username").innerHTML);	//innerHTML显示指定值的内容
</script>

innerHTML 解析为HTML
改写html,将内容1替换

<div id="box">1</div>
<script>
    var box = document.getElementById("box");
	box.innerHTML= '请<a href="https://baidu.com">百度</a>';
<script>

效果:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7LEbHLIE-1577066177123)(http://img0.ph.126.net/TDVaGG0JOi2NhDHjF0uN1Q==/6632752217514298743.png)]

innerText 仅显示文字

	var box = document.getElementById("box");
	box.innerText = '请<a href="https://baidu.com">百度</a>';

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xbefuEqs-1577066177124)(http://img0.ph.126.net/RlXMDhfnV-SNCRinE0_msg==/1281274094006921547.png)]

innerValue
如果有其他标签,不显示标签效果,只显示内部内容

关键字var

定义变量,所有的变量都需要这种方式定义

  1. 所有的变量必须使用var声明之后使用
  2. 变量名定义:字母、数字、下划线、$ (数字不能作为开头,关键字不能作为变量)
  3. 没有被赋值的变量的初始值是undefined

六大数据类型

  1. Number —数字

  2. String — 字符串

  3. Boolean — 布尔

  4. function — 函数 函数名字加括号是执行函数

  5. undefined — 未定义

  6. object — 对象 只有对象曾能去点方法点属性,数组也是对象

var obj = {
    "name" : "slice",
    "age"  :  18
};

注册事件(绑定事件、事件监听)Eventlistener

onmouseenter / oumouseover 鼠标划入

鼠标划入显示div的内容

<body>
    <div id="box">12345</div>
</body>
<script>
	var box =document.getElementById("box");
	box.onmouseover = function(){
		alert(box.innerHTML);
	};
	
</script>

onmouseleave / onmouseout 鼠标划出

onmousemove 鼠标移动

onclick 点击左键

ondbclick 双击左键

onblur 失去焦点 能被获取焦点的元素才能触发失去焦点

onfocus 得到焦点 能被获得到焦点的元素才能触发失去焦点

能被输入字符才能触发的事件

onkeydown 键盘按下某键

onkeyup 键盘抬起某键

onkeypress 键盘按下并抬起某键

通过css3样式,结合javascript变化

-moz代表火狐的内核
-ms代表IE内核
-webkit代表webkit内核,常见是的是谷歌和苹果浏览器

transition语法

用于图像渐变的变化速度和方式

transition: property duration timing-function delay;

timing-function的详细介绍: http://www.w3school.com.cn/cssref/pr_transition-timing-function.asp

  • 实例:div盒子100px渐变时间为1s,变为300px
    	#box-on {
    		width: 100px;
    		height: 100px;
    		background: pink;
    		-webkit-transition:all 1s ease;
    		-o-transition: all 1s ease;
    		transition: all 1s ease;
    	}

css3样式控制案例

 <style type="text/css">
    	* {
    		margin: 0;
    		padding: 0;
    	}
    	#box {
    		width: 300px;
    		height: 300px;
    		background: skyblue;
    		-webkit-transition:all 1s linear;
    		-o-transition: all 1s linear;
    		transition: all 1s linear;
    		border-radius: 50%;
    	}
    	#box-on {
    		width: 100px;
    		height: 100px;
    		background: pink;
    		-webkit-transition:all 1s ease;
    		-o-transition: all 1s ease;
    		transition: all 1s ease;
    	}
    	#parent {
    		width: 300px;
    		height: 300px;
    	}
    </style>
</head>

<body>
	<div id="parent">
    	<div id="box"></div>
	</div>
    <button id="btn">变化</button>


<script>
	var btn = document.getElementById("btn");
	var box = document.getElementById("box");


	btn.onclick = function() {
		if(box.id == "box"){
			box.id="box-on";
		} else {
			box.id ="box";
		}
	}

通过javascript调整样式

box.style.marginTop 等同于 box.style[margin]

   <style>
    	* {
    		margin: 0;
    		padding: 0;
    	}
    	#box {
    		width: 150px;
    		height: 150px;
    		background: orange;
    	}
	</style>
</head>

<body>
    <div id="box">
		    	
    </div>
<script>
	var box = document.getElementById("box");

	box.onclick = function() {
		box.style.width = "500px";
		box.style.height = "300px";
		box.style.transition = "all 1s linear";
		box.style.marginTop = "200px";
		box.style.marginLeft = "200px";
		// box.style["margin-top"] = "200px";   等同于box.style.marginTop = "200px";
	}
	
</script>

//也可以这样写
//		var a = "margin-top";
//		box.style[a] = "180px";

样式修改简写模式:

box.style.cssText += "width:900px;height:500px;margin-top:100px;margin-left:150px";


浮动的方式
		//浮动
		box.style.cssText +="float:right;"; //IE9+  等价于如下方式:
		box.style.cssFloat = "right"; //IE9
		
		
		box.style.styleFloat ="right";  //IE8-


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值