zoukankan      html  css  js  c++  java
  • html5

    什么是html5
    1.H5不是新语言,是第五次修改的版本
    
    2.支持所有主流浏览器(IE9以上支持H5,ie8一下不支持)
    
    3.改变了用户与文档交互方式:多媒体 video audio canvas 
    
    4.增加其它的新特性:语义特性,本地存储特性,网页多媒体,二维三维,特效(过度,动画)
    
    5.相对于h4:
        1:进步:抛弃了不常用的标记
        2.新增:新增标记和属性
        3.结构简洁
    
    html:xt +tab
    html5 是一套规范
    -------------------------------------------
    100% 流失布局 || 百分布局
    
    解决ie8兼容性问题:引进JS文件或者更改属性
    电话 tel 弹出数字键盘
    
    form:myForm 指定表单 
    
    -------------------------------
    码云上传
    git clone url地址
    git add * 将代码上传到本地仓库
    git commit -m '必须写的注释'
    git push
    
    1.在码云上创建项目
    2.复制项目地址
    3.四步走
    
    https://gitee.com/tuziling84/code.git
    -------------------------------------
       <!--autofocus:自动获取焦点-->
        <!--autocomplete:自动完成:on:打开  off:关闭
        1.必须成功提交过:提交过才会记录
        2.当前添加autocomplete的元素必须有name属性-->
        用户名:<input type="text" name="userName" placeholder="请输入用户名" autofocus autocomplete="on"> <br>
        <!--tel并不会实现验证,仅仅是在移动端能够弹出数字键盘-->
        <!--required:必须输入,如果没有输入则会阻止当前数据提交-->
        <!--pattern:正则表达式验证
        *:代表任意个
        ?:代表0个或1个
        +:代表1个或多个-->
        手机号:<input type="tel" name="userPhone" required pattern="^(+86)?1d{10}$"> <br>
        <!--multiple:可以选择多个文件-->
        文件:<input type="file" name="photo" multiple> <br>
        <!--email:有默认验证  在email中,multiple允许输入多个邮箱地址,以逗号分隔-->
        邮箱:<input type="email" name="email" multiple><br>
        
        <!--提交:-->
        <input type="submit"> <br>
    </form>
    <!--下面这个表单元素并没有包含在form中:默认情况下面表单元素的数据不会进行提交-->
    <!--form:指定表单id,那么在将来指定id号的表单进行数据提交的时候,也会将当前表单元素的数据一起提交-->
    地址:<input type="text" name="address" form="myForm">
    
    
     <!--建立输入框与datalist的关联  list="datalist的id号"-->
        专业:<input type="text" list="subjects"> <br>
        <!--通过datalist创建选择列表-->
        <datalist id="subjects">
            <!--创建选项值:value:具体的值 label:提示信息,辅助值-->
            <!--option可以是单标签也可以是双标签-->
            <option value="英语" label="不会"/>
            <option value="前端与移动开发" label="前景非常好"></option>
            <option value="java" label="使用人数多"></option>
            <option value="javascript" label="做特效"></option>
            <option value="c" label="不知道"></option>
        </datalist>
    
        网址:<input type="url" list="urls">
        <datalist id="urls">
            <!--如果input输入框的type类型是url,那么value值必须添加http://-->
            <option value="http://www.baidu.com" label="百度"></option>
            <option value="http://www.sohu.com"></option>
            <option value="http://www.163.com"></option>
        </datalist>
    
    -------------------------------
    fullscreen
        1、js的兼容性处理   加前缀
            google+apple+360+qq       内核:webkit
            火狐                      内核:moz
            欧朋                      内核:o
            ie                        内核:ms
        2、实现全屏和退出全屏对象不一样
            实现全屏:具体对象调用     RequestFullScreen()方法
            退出全屏:document对象调用 CancelFullScreen()方法
        3、火狐最标准的 
    
    
    -------------------------
    oninput :监听当前指定元素
    onkeypu : 键盘弹起时候触发
    oninvalid :当验证不通过时触发
    
    
    进度条
    progress :  max  value
    meter
    -----------------------
    音频
    embed 直接插件视频文件:他的本质是条用本机上已经安装的软件,有兼容性
    
    flash 插件  安装flash 苹果设备不支持  增加学习成本
    
    <!--embed:可以直接插入音频视频,本质是通过本机安装的音频视频播放软件来播放的。要求必须已经安装了这些软件  兼容性-->
    
    <!--flash:  1.先学习flash,增加使用成本  2.iphone,ipd,不支持flash-->
    
    <!--audio:音频-->
    
        <!-- <audio controls  autoplay>
            <source src="./mp3/aa.mp3" type="audio/ogg">
            <source src="./mp3/aa.mp3" type="audio/mpeg">
        </audio> -->
    
    <!--
    src:播放文件的路径
    controls:音频播放器的控制器面板
    autoplay:自动播放
    loop:循环播放-->
    <!--<audio src="../mp3/aa.mp3" controls></audio>-->
    
    <!--video:视频-->
    <!--
    pause 暂停
    src:播放文件的路径
    controls:音频播放器的控制器面板
    autoplay:自动播放
    loop:循环播放
    poster:指定视频还没有完全下载完毕,或者用户没有点击播放前显示的封面。 默认显示当前视频文件的第一副图像
    视频的宽度
    height:视频的高度
    -->
    <!--注意事项:视频始终会保持原始的宽高比。意味着如果你同时设置宽高,并不是真正的将视频的画面大小设置为指定的大小,而只是将视频的占据区域设置为指定大小,除非你设置的宽高刚好就是原始的宽高比例。所以建议:在设置视频宽高的时候,一般只会设置宽度或者高度,让视频文件自动缩放-->
    <!--<video src="../mp3/mp4.mp4" poster="../images/l1.jpg" controls  height="600"></video>-->
    
    <!--source:因为不同的浏览器所支持的视频格式不一样,为了保证用户能够看到视频,我们可以提供多个视频文件让浏览器自动选择-->
    <!--<video muted src="../mp3/flv.flv" controls></video>-->
    
    ------------------------------------
    
    1.ononline:网络连通的时候触发事件
    2.nooffline:网络断开触发
    
    全屏操作:
    required  必填
    
        3c3ff6933cb1c09c87d09de335612321
    
    --------------------
    拖拽:
    e.preventDefault();阻止默认事件
    draggable 改变鼠标样式  拖拽
    --------------------------------
    sessionStorage
    生命周期:
    存储大小:5M
    关闭浏览器 数据不存在
    存储在浏览器当前页面内存中
    数据只能在当前页面
    sessionStorage.getItem("key",value)
    setItem(key,value):存储数据,以键值对的方式存储
    getItem(key):获取数据,通过指定名称的key获取对应的value值
    removeItem(key):删除数据,通过指定名称key删除对应的值
    clear():清空所有存储的内容
    
    
    JSON.stringify(arr2)   =========将数组转换成字符串  原理就是在数组身上打上一个引号
    JSON.parse(arr3)  ==============将字符串转换成数组对象    原理是把引号去掉
    -------------------------
    localStorage 同一个浏览器可以共享数据
    数据只能手动删除
    存储大小 : 20M
    数据存储在硬盘上
    setItem(key,value):存储数据,以键值对的方式存储
    getItem(key):获取数据,通过指定名称的key获取对应的value值
    removeItem(key):删除数据,通过指定名称key删除对应的值
    clear():清空所有存储的内容
    
    
    例子:
    
    //定义一个字符串
    
    var data='{"name":"goatling"}'
    
    //解析对象?
    
    ?JSON.parse(data)
    
    结果是:
    
    ?name:"goatling"
    
    JSON.stringify()【从一个对象中解析出字符串】
    
    var data={name:'goatling'}
    
    JSON.stringify(data)
    
    结果是:
    
    '{"name":"goatling"}'
    
    --------------------------
    用于被拖拽元素的事件
     ondrag         应用于拖拽元素,整个拖拽过程都会调用--持续
     ondragstart    应用于拖拽元素,当拖拽开始时调用
     ondragleave    应用于拖拽元素,当鼠标离开拖拽元素时调用
     ondragend      应用于拖拽元素,当拖拽结束时调用
    应用于目标元素的事件 
     ondragenter    应用于目标元素,当拖拽元素进入时调用
     ondragover     应用于目标元素,当停留在目标元素上时调用--持续
     ondrop         应用于目标元素,当在目标元素上松开鼠标时调用
     ondragleave    应用于目标元素,当鼠标离开目标元素时调用
    e.preventDefault(); 清除默认行为
    
    列如:
    <script>
                 var div1 = document.querySelector("#div1");
                var div2 = document.querySelector("#div2");
                //开始拖拽
                document.ondragstart=function(e){
                    console.log(e);
                    e.dataTransfer.setData("text/html",e.target.id);
                }
                //持续拖拽
                document.ondragover=function(e){
                    e.preventDefault();
                }
                //结束拖拽
                document.ondrop=function(e){
                   var id=e.dataTransfer.getData("text/html");
                    e.target.appendChild(document.getElementById(id));
                }
            </script>
    
    
    ---------------上传-----------------------
    multiple 多个文件上传
     onabort:读取文件中断片时触发
     onerror:读取错误时触发
     onload:文件读取成功完成时触发
     onloadend:读取完成时触发,无论成功还是失败
     onloadstart:开始读取时触发
     onprogress:读取文件过程中持续触发
    reader.onload=function(){
     //console.log(reader.result); 读取的文件在读取对象的reader.result中
        document.querySelector("img").src=reader.result;
    }
    reader.onprogress=function(e){
        var percent= e.loaded/ e.total*100+"%";
        div.style.width=percent;
    }
    
    如:
     var myfile=document.querySelector("#myfile");
            var div =document.querySelector("div");
            myfile.onchange=function(){
                div.innerHTML="";
               var file=myfile.files;//获取个数
              // console.log(file); 
              for(var i = 0; i < file.length;i++){
                  var reader=new FileReader();
                //  console.log(reader.readAsDataURL)
                reader.readAsDataURL(file[i]);
                reader.onload=function(e){
                    var img=document.createElement("img");
                   // cosnole.log(img);
                   img.src=e.target.result;
                    div.appendChild(img);
                }
              }
            }
  • 相关阅读:
    AIMS 2013中的性能报告工具不能运行的解决办法
    读懂AIMS 2013中的性能分析报告
    在线研讨会网络视频讲座 方案设计利器Autodesk Infrastructure Modeler 2013
    Using New Profiling API to Analyze Performance of AIMS 2013
    Map 3D 2013 新功能和新API WebCast视频下载
    为Autodesk Infrastructure Map Server(AIMS) Mobile Viewer创建自定义控件
    ADN新开了云计算Cloud和移动计算Mobile相关技术的博客
    JavaScript修改css样式style
    文本编辑神器awk
    jquery 开发总结1
  • 原文地址:https://www.cnblogs.com/tuziling/p/10074502.html
Copyright © 2011-2022 走看看