听听音乐 發表於 2019-8-16 18:24:00

HTML5——新特性

<p><span style="font-size: 14pt"><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190821181825136-739035646.png" alt=""></span></p>
<p>&nbsp;</p>
<p><span style="font-size: 14pt">HTML5新增的标签:块级元素</span><br><span style="color: rgba(255, 0, 255, 1)">1.header</span> (头部)</p>
<p><span style="color: rgba(255, 0, 255, 1)">2.Footer</span> (底部)</p>
<p><span style="color: rgba(255, 0, 255, 1)">3.Article&nbsp; →&nbsp; div</span> (相当于div标签)</p>
<p><span style="color: rgba(255, 0, 255, 1)">4.Section&nbsp; →&nbsp; p</span> (相对于p标签)</p>
<p><span style="color: rgba(255, 0, 255, 1)">5.Nav</span>  (导航条)</p>
<p><span style="color: rgba(255, 0, 255, 1)">6.Aside</span>  (局部,相当于span标签)</p>
<p><span style="color: rgba(255, 0, 255, 1)">7.Svg </span> (绘图)&nbsp; &nbsp; &nbsp; &nbsp;详解:https://www.cnblogs.com/yangpeixian/p/11359676.html</p>
<p><span style="color: rgba(255, 0, 255, 1)">8.Canvas</span>  (绘图) 详解:https://www.cnblogs.com/yangpeixian/p/11343542.html</p>
<p><span style="color: rgba(255, 0, 255, 1)">9.Audio</span>  (音频标签)</p>
<p>多媒体标签详解:https://www.cnblogs.com/yangpeixian/p/11365675.html</p>
<p><span style="color: rgba(255, 0, 255, 1)">10.Video</span>  (视频标签)</p>
<p><span style="color: rgba(255, 0, 255, 1)">11.自定义标签</span>:行级元素</p>
<p>可以自定义标签,比如定义一个<span style="color: rgba(51, 102, 255, 1)">&lt;student&gt; &lt;/student&gt;&nbsp;</span></p>
<p>自定义的标签,都是为行级标签</p>
<p><span style="font-size: 14pt">HTML5新增的属性:</span></p>
<p><span style="color: rgba(255, 0, 255, 1)">1.Contenteditable</span> 用户能否覆盖页面上的内容</p>
<p>在元素行间设置contenteditable=“true”(默认是为false),就可以在页面中修改元素文本。</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812171936391-1440772645.gif" alt=""></p>
<p><span style="color: rgba(255, 0, 255, 1)">2.Draggable</span> 支持拖放</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812175754937-234340706.png" alt=""></p>
<p>&nbsp;在元素行间设置draggable=“true”,即为可拖</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812175720568-479735944.gif" alt=""></p>
<p>&nbsp;拖动事件:</p>
<div>ondragstart、ondragend、ondrag</div>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812180401918-1733527521.gif" alt=""></p>
<p>&nbsp; 释放区事件,为了方便理解,我做了一个小demo(实现回收站)</p>
<p>&nbsp;<img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190813002128586-1992922168.gif" alt=""></p>
<div class="cnblogs_code">
<pre>&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;meta http-equiv="X-UA-Compatible" content="ie=edge"&gt;
    &lt;title&gt;Document&lt;/title&gt;
    &lt;style&gt;<span style="color: rgba(0, 0, 0, 1)">
      #demo {
            width: 100px;
            height: 100px;
            background</span>-<span style="color: rgba(0, 0, 0, 1)">color: aqua;
      }

      #demo1 {
            width: 100px;
            height: 100px;
            background</span>-<span style="color: rgba(0, 0, 0, 1)">color: yellow;
      }

      #demo2 {
            width: 100px;
            height: 100px;
            background</span>-<span style="color: rgba(0, 0, 0, 1)">color: purple;
      }
      .box {
            width: 300px;
            height: 300px;
            border: 1px solid black;
            position:absolute;
            left: 200px;
            top: </span>0<span style="color: rgba(0, 0, 0, 1)">;
            font</span>-<span style="color: rgba(0, 0, 0, 1)">size: 40px;
            text</span>-<span style="color: rgba(0, 0, 0, 1)">align: center;
            line</span>-<span style="color: rgba(0, 0, 0, 1)">height: 300px;
      }
    </span>&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;div class="demo"&gt;
      &lt;div draggable="true" id="demo"&gt;&lt;/div&gt;
      &lt;div draggable="true" id="demo1"&gt;&lt;/div&gt;
      &lt;div draggable="true" id="demo2"&gt;&lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="box"&gt;回收站&lt;/div&gt;
    &lt;script&gt;
      <span style="color: rgba(0, 0, 255, 1)">var</span> demo = document.getElementsByClassName('demo');
      </span><span style="color: rgba(0, 0, 255, 1)">var</span> box = document.getElementsByClassName('box');
      demo.ondragstart </span>= <span style="color: rgba(0, 0, 255, 1)">function</span>(e){ <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">用冒泡获取到每一个demo子元素</span>
            <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">用datatransfer方法设置当前点击的id</span>
            e.dataTransfer.setData('id'<span style="color: rgba(0, 0, 0, 1)">, e.target.id);
      }
      box.ondragenter </span>= <span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)"> (e) {
            console.log(</span>'占据回收站空间'<span style="color: rgba(0, 0, 0, 1)">);
      }
      box.ondragover </span>= <span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)"> (e) {
            e.preventDefault();         </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">组织事件发生,才会执行放下垃圾       </span>
            console.log('进入回收站'<span style="color: rgba(0, 0, 0, 1)">);
      }
      box.ondragleave </span>= <span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)">(e){
            console.log(</span>'没扔垃圾就离开'<span style="color: rgba(0, 0, 0, 1)">);
      }
      box.ondrop </span>= <span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)"> (e) {
            </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">获取当前得到的id,然后删除掉元素</span>
            <span style="color: rgba(0, 0, 255, 1)">var</span> oDiv = document.getElementById(e.dataTransfer.getData('id'<span style="color: rgba(0, 0, 0, 1)">));
            oDiv.parentNode.removeChild(oDiv);
            console.log(</span>'放下垃圾'<span style="color: rgba(0, 0, 0, 1)">);
      }
    </span>&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
</div>
<p><span style="font-size: 18px">&nbsp;dataTransfer</span></p>
<p>在进行拖放操作的时候,dataTransfer对象可以用来保存被拖动的数据。它可以保存一项或多项数据、一种或多数数据类型。</p>
<p>通谷一点讲,就是可以通过它来传输被拖动的数据,以便在拖拽结束的时候,对数据进行其他的操作。</p>
<p>&nbsp;开始托动的时候进行设置,释放的时候获取设置的数据进行操作。</p>
<p><span style="color: rgba(255, 0, 255, 1)">3.Hidden</span> 隐藏</p>
<p>在元素行间设置hidden,即相当于设置了display=“none”一样</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812172414331-421932299.gif" alt=""></p>
<p><span style="color: rgba(255, 0, 255, 1)">4.Contextmenu</span> 为元素设定跨界菜单(但目前暂无浏览器支持该属性)</p>
<p><span style="color: rgba(255, 0, 255, 1)">5.data-val</span> 自定义属性</p>
<p>是这样设置在行间上的属性</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812173153012-571756818.png" alt=""></p>
<p>可以这样获取</p>
<p><img src="https://img2018.cnblogs.com/blog/1646536/201908/1646536-20190812173406547-1255358593.png" alt=""></p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/yangpeixian/p/11341868.html
頁: [1]
查看完整版本: HTML5——新特性