比喻:html相当一个人拥有头和身体但头部一般不会被看到(title和link中可被看到),css相当于衣服。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title> ##主动闭合标签 成对出现
<style>
/*.c1{*/ ###class选择器
/*background-color: red;*/
/*}*/
/*.c2{*/
/*height: 100px;*/
/*width: 100px;*/
/*}*/
/*#i2{*/ ###id
/*background-color: red;*/
/*}*/
/*div{*/ ####标签选择器
/*background-color: green;*/
/*}*/
.c1:hover{
} ##当鼠标移动到设置样式。
</style>
</head>
<body>
<div style="height: 200px;width: 200px;border: 1px red solid;position: relative"> ##分层
<div style="height: 20px;width: 20px;background-color: green;position: absolute;right: 0;bottom: 0;"></div> #与absolute联用
<div style="height: 20px;width: 20px;"></div>
<div style="height: 20px;width: 20px;"></div>
<div style="height: 20px;width: 20px;"></div>
</div>
z-index定义层级
<div> </div> ##伪白板标签
<h1> </h1> ##标题标签
<span> </span> ##白板标签
<input type="text">
<from action="/login">
<input type="button" value="anniu"> ####与js绑定 一般ajax
<input type="submit" > ### 和from联用可以直接提交数据 向action属性提交
</from>
<input type="checkbox" checked="checked">
<input type="radio" name="nn">
<input type="password">
<input type="file">
<input type="reset"> ##代码回到初始状态
<selest name="dd"> ###下拉框选项
<option value="dd">1</option> ###形成{等待:dd}模式
<option>2</option>
<option>3</option>
<option>4</option>
</selest>
<table>
<thead border="1">
<tr>
<th colspan="2"></th>
</tr>
</thead>
<tbody>
<tr>
<td>
</td>
</tr>
</tbody>
</table>
Html基础之Dom操作
参考网址:www.imdsx.cn
DOM(Document Object Model 文档对象模型)
一个web页面的展示,是由html标签组合成的一个页面,dom对象实际就是将html标签转换成了一个文档对象。可以通过dom对象中js提供的方法,找到html的各个标签。通过找到标签就可以操作标签使页面动起来,让页面动起来。
Console 中通过document 编辑
1.直接获取标签
document.getElementById(‘i1‘); //获取id为i1的标签 定位标签
将上面通过var 定义为一个局部变量如demo 就可以取子元素demo.children(这是一个列表)按照位置取值即可。如demo.children.value=’’就可以赋值。还有demo.fristElementChild, demo.lastElementChild. 同级父标签的下个兄弟标签写入demo.parentElement.nextElementSibling.children[1]。可以通过层级关系定位
document.getElementsByClassName(‘c1‘); ##返回多种结果 除非没有id用该方法。
document.getElementsByName(‘dsx‘); //根据name属性获取标签数组
document.getElementsByTagName(‘div‘); //根据标签名称获得标签数组
2.间接获取标签
var tmp=document.getElementById(‘h-test‘);
tmp.parentElement; // 父节点标签元素
tmp.children; //所有子标签
tmp.firstElementChild; //第一个子标签元素
tmp.lastElementChild; // 最后一个子标签元素
tmp.nextElementSibling; //下一个兄弟标签元素
tmp.previousElementSibling; //上一个兄弟标签元素
3.文本操作
#####对于白板标签可以使用.innerText来取值答应标签中的内容而.innerHtml答应标签所有内容。
innerHTML与innerText tmp.innerText; // 获取标签中的文本内容 tmp.innerText=‘老铁双击666‘; //更改标签内文本内容 tmp.innerHTML; // 获取标签中的所有内容,包含html代码 tmp.innerHTML = ‘<a href="http://www.imdsx.cn">大师兄</a>‘ // innerHTML 可以将含有HTML代码的字符串变为标签 input、textarea标签 tmp.value; //获取input、textarea参数 tmp.value = ‘内容‘ // 对input、textarea的内容进行赋值 select标签 tmp.value; //获取select标签的value参数 tmp.value = ‘选项‘ // 修改select选项 tmp.selectedIndex; // 获取select标签的选项下标 tmp.selectedIndex = 1 // 通过下标更改select的选项 操作样式
操作属性
定时器
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--<link rel="stylesheet" href="static">--> ###link标签可以引入css
<style></style>
<!--写在上面和写在下面的区别:-->
<!--影响页面的加载速度-->
<!--<script src="s1.js" type="text/javascript"></script>--> ### script 标签中src代表要引入的js 这里是js的文本类型,该语句如果写在head中会先加载,过程会有空白页面给用户体验不好。放在bady中先加载css样式,后面慢慢加载,写到最后。
</head>
<body>
<script>
// if (1 == 2) {
// console.log(1111111111)
// } else if (2 == 2) {
// console.log(1111111111)
// } else {
// console.log(‘最后了!‘)
// }
// 如果是两个等号则不判断数据类型 如果三个等号则判断数据类型
// if (‘1‘===‘1‘){
// console.log(1111)
// } else {
// console.log(2222)
// }
// switch (1){
// case 1:
// console.log(111);
// break;
// case 2:
// console.log(222);
// break;
// default:
// console.log(333);
// }
// var name = ‘dsx nhy‘;
// for (var a in name){
// console.log(name[a]);
// }
//
// var list = [‘大师兄‘,‘牛牛‘,‘安大叔‘];
// for (var i in list){
// console.log(list[i])
// }
//
// var dict = {‘宝马‘: ‘BMW‘, ‘奔驰‘: ‘BC‘};
// for (var d in dict){
// console.log(d);
// console.log(dict[d]);
// }
// 不支持字典的循环
// var list = [‘大师兄‘,‘牛牛‘,‘安大叔‘];
// for (var i=0;i<=list.length;i++){
// console.log(list[i])
// }
// 与python相同
// while (1==1){
// console.log(1111)
// }
// function f(name,age) {
// console.log(name);
// console.log(age);
// }
// f(‘dsx‘,18)
// function f() {
// console.log(‘in‘+name)
// }
// console.log(‘out‘+name);
// f()
// 自执行函数
// a=(function () {
// console.log(‘自执行函数!‘)
// });
// a()
</script>
</body>
</html>
Html参数传递
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form id="login_value">
<div>
<label for="username">用户名</label>
<input id="username" type="text" name="username" placeholder="请输入用户名" value="houyafan22">
</div>
<div>
<label for="passwd">密码</label>
<input id="passwd" type="password" name="passwd" placeholder="请输入密码" value="Houyafan123">
</div>
<div>
<input type="button" value="登录" onclick="login()" >
</div>
</form>
<!--jq 可以理解为对dom进行了封装 更加简单-->
<script src="jquery-1.11.1.min.js"></script>
<script>
function login() {
// 判断你是否真的要登录
var flag = confirm(‘你确认登录吗?‘);
// 获取用户的帐号和密码
var username = document.getElementById(‘username‘).value;
var passwd = document.getElementById(‘passwd‘).value;
// 判断是否真正去登录 如果登录则执行ajax的操作
if (flag){
$.ajax({
url:"http://118.24.3.40/api/user/login",
method:"post",
// jq 提供的获取form的快捷方式
// data:$(‘#login_value‘).serialize(),// {"username":"houyafan","passwd":"Houyafan123"}
data:{"username":username,"passwd":passwd},
// 回调函数
success:function (data) {
// 如果登录成功则code为0
if(data.error_code==0){
// 获取我们需要的登录信息 返回值是一个字典 通过字典的取值方法获取值
var sign = data.login_info.sign;
var userId = data.login_info.userId;
// 根据数据拼接成html标签
var sign_span = ‘<div style="background-color: red"><span>‘+sign+‘<span/></div>‘;
var userId_span = ‘<div style="background-color: red"><span>‘+userId+‘<span/></div>‘;
console.log(sign_span);
console.log(userId_span);
// 定位起始位置
var form_obj = document.getElementById(‘login_value‘);
console.log(form_obj);
// 添加str的标签到页面上
form_obj.insertAdjacentHTML(‘afterEnd‘,sign_span+userId_span);
// 如果code不为0 则代表登录失败 直接弹出错误信息
}else {
alert(data.msg);
}
}
})
// 否则则不做任何操作 只是弹出一个信息
}else {
alert(‘没事你瞎点啥!‘)
}
}
</script>
</body>
</html>
Html 配合接口练习(抽奖项目)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form id="login_value"> ###注意from包裹内容,便于传参。
<div>
<label for="username">用户名</label>
<input id="username" type="text" name="username" placeholder="请输入用户名" value="houyafan22">
</div>
<div>
<label for="passwd">密码</label> ###for的内容和id一样扩充了可点击范围
<input id="passwd" type="password" name="passwd" placeholder="请输入密码" value="Houyafan123">
</div>
<div>
<input type="button" value="登录" onclick="login()" >
</div>
</form>
<!--jq 可以理解为对dom进行了封装 更加简单-->
<script src="jquery-1.11.1.min.js"></script> ####jquery便于使用阿贾克斯请求
<script>
function login() {
// 判断你是否真的要登录
var flag = confirm(‘你确认登录吗?‘); ####confirm就是确认框
// 获取用户的帐号和密码
var username = document.getElementById(‘username‘).value; ###通过id取值
var passwd = document.getElementById(‘passwd‘).value;
// 判断是否真正去登录 如果登录则执行ajax的操作
if (flag){
$.ajax({ ####ajax请求
url:"http://118.24.3.40/api/user/login",
method:"post",
// jq 提供的获取form的快捷方式
// data:$(‘#login_value‘).serialize(),// 通过id定位,获得的数据{"username":"houyafan","passwd":"Houyafan123"}
data:{"username":username,"passwd":passwd},##手动写
// 回调函数
success:function (data) { ###如果成功调该匿名函数
// 如果登录成功则code为0
if(data.error_code==0){
// 获取我们需要的登录信息 返回值是一个字典 通过字典的取值方法获取值
var sign = data.login_info.sign;
var userId = data.login_info.userId;
// 根据数据拼接成html标签
var sign_span = ‘<div style="background-color: red"><span>‘+sign+‘<span/></div>‘;
var userId_span = ‘<div style="background-color: red"><span>‘+userId+‘<span/></div>‘;
console.log(sign_span);
console.log(userId_span);
// 定位起始位置
var form_obj = document.getElementById(‘login_value‘);
console.log(form_obj);
// 添加str的标签到页面上
form_obj.insertAdjacentHTML(‘afterEnd‘,sign_span+userId_span);
// 如果code不为0 则代表登录失败 直接弹出错误信息
}else {
alert(data.msg); ###谈话框弹出错误接口信息的msg
}
}
})
// 否则则不做任何操作 只是弹出一个信息
}else {
alert(‘没事你瞎点啥!‘)
}
}
</script>
</body>
</html>
原文地址:https://www.cnblogs.com/cslw5566/p/9271328.html