您的位置:首页 > Web前端 > HTML5

HTML5新增标签 & oninput与onchange

2016-09-10 22:21 375 查看
新增基本标签
article aside figcaption figure footer header hgroup mark nav section time keygen meter summary
header与footer标签用于表示页面或者应用的头部和尾部。nav用于表示导航。
可以使用section和article标签替代过度使用div,用这些标签来对页面进行内容划分,例如article标签表示文章。aside标签和article标签的用法类似,只是表示内容会出现在侧边栏。figure标签表示一段自包含的内容——独立的流内容(图像、图表、照片、代码等等)。figure
元素的内容与主内容相关,但如果被删除,则不应对文档流产生影响。

使用DOM与CSS实现新增结构元素的兼容
基本思路:在JS中使用createElement进行元素的创建;在CSS样式中,进行这些元素样式的初始化

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>H5course</title>
<script>
document.createElement('header');
</script>
<style>
header {
display: block;
}
</style>
</head>
<body>
<header>独行冰海</header>
</body>
</html>

oninput等表单事件

过去我们常使用keydown和keyup辅助表单元素的处理,这要求处理时,表单元素必须处于激活(聚焦)状态。oninput事件可以实时监听文本框的输入变化。
现代浏览器支持oninput,其中包括IE9。
1、onchange事件与onpropertychange事件的区别: 
onchange事件在内容改变(两次内容有可能还是相等的)且失去焦点时触发;onpropertychange事件却是实时触发,即每增加或删除一个字符就会触发,通过js改变也会触发该事件,但是该事件IE专有。
2、oninput事件与onpropertychange事件的区别: 
oninput事件是IE之外的大多数浏览器支持的事件,在value改变时触发,实时的,即每增加或删除一个字符就会触发,然而通过js改变value时,却不会触发;onpropertychange事件是任何属性改变都会触发的,而oninput却只在value改变时触发,oninput要通过addEventListener()来注册,onpropertychange注册方式跟一般事件一样。(此处都是指在js中动态绑定事件,以实现内容与行为分离)
3、oninput与onpropertychange失效的情况: 
(1)oninput事件:a). 当脚本中改变value时,不会触发;b). 从浏览器的自动下拉提示中选取时,不会触发。 
(2)onpropertychange事件:当input设置为disable=true后,onpropertychange不会触发。
oninvalid事件,在表单元素的值非法时被触发。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: