HTML5有什么新功能

发布时间:2021-08-25 18:27:35 作者:chen
来源:亿速云 阅读:121

这篇文章主要介绍“HTML5有什么新功能”,在日常操作中,相信很多人在HTML5有什么新功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTML5有什么新功能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Element.classList

classList API提供了我们多年来一种使用JavaScript工具库来实现的控制CSS的基本功能:

XML/HTML Code复制内容到剪贴板

  1. // 增加一个CSS类   

  2. myElement.classList.add("newClass");   

  3.   

  4. // 删除一个CSS类   

  5. myElement.classList.remove("existingClass");   

  6.   

  7. // 检查是否拥有一个CSS类   

  8. myElement.classList.contains("oneClass");   

  9.   

  10. // 反转一个CSS类的有无   

  11. myElement.classList.toggle("anotherClass");   

这个新出现的API的主要价值体现就是:简单实用。读一下这篇文章,里面介绍了其它几个classList功能特征。

ContextMenu API

这个新的ContextMenu API非常的有用:它并不会替换原有的右键菜单,而是将你的自定义右键菜单添加到浏览器的右键菜单里:

XML/HTML Code复制内容到剪贴板

  1. <section contextmenu="mymenu">  

  2.   

  3.   <!-- 添加菜单 -->  

  4.   <menu type="context" id="mymenu">  

  5.    <menuitem label="Refresh Post" onclick="window.location.reload();" icon="/images/refresh-icon.png"></menuitem>  

  6.    <menu label="Share on..." icon="/images/share_icon.gif">  

  7.      <menuitem label="Twitter" icon="/images/twitter_icon.gif" onclick="goTo('//twitter.com/intent/tweet?text=' + document.title + ':  ' + window.location.href);"></menuitem>  

  8.      <menuitem label="Facebook" icon="/images/facebook_icon16x16.gif" onclick="goTo('//facebook.com/sharer/sharer.php?u=' + window.location.href);"></menuitem>  

  9.    </menu>  

  10.  </menu>  

  11. </section>  

需要注意的是,最好使用JavaScript动态的创建这些菜单代码,因为菜单事件最终要调用JavaScript执行任务,如果用户禁止了JavaScript,右键菜单也不会生成,他同时也不会看到菜单。

Element.dataset

使用dataset API,程序员可以方便的获取或设置data-*自定义属性:

XML/HTML Code复制内容到剪贴板

  1. /*  以下面的代码为例   

  2.   

  3.  <div id="myDiv" data-name="myDiv" data-id="myId" data-my-custom-key="This is the value"></div>  

  4.   

  5. */   

  6.   

  7. // 获取元素   

  8. var element = document.getElementById("myDiv");   

  9.   

  10. // 获取id   

  11. var id = element.dataset.id;   

  12.   

  13. // 读取 "data-my-custom-key" 的值   

  14. var customKey = element.dataset.myCustomKey;   

  15.   

  16. // 修改成其它值   

  17. element.dataset.myCustomKey = "Some other value";   

  18.   

  19.  // 结果是:   

  20.  //    <div id="myDiv" data-name="myDiv" data-id="myId" data-my-custom-key="Some other value"></div>  

  21.   

无需多说,跟classList一样,简单实用

window.postMessage API

即使是IE8也对postMessage API支持多年了,postMessage API的功能是可以让你在两个浏览器窗口或iframe之间传递信息数据:

JavaScript Code复制内容到剪贴板

  1. // 从A域上的窗口或iframe,发送一条信息到B域中的窗口或ifame   

  2. var iframeWindow = document.getElementById("iframe").contentWindow;   

  3. iframeWindow.postMessage("来自第一个窗口的问候!");   

  4.   

  5. // 在第二个不同域上的窗口或iframe接收消息   

  6. window.addEventListener("message"function(event) {   

  7.  // 检验域的合法性   

  8.  if(event.origin == "http://www.webhek.com") {   

  9.   // 输出日志信息   

  10.   console.log(event.data);   

  11.   

  12.   // 反馈消息   

  13.   event.source.postMessage("你也好吗!");   

  14.  }   

  15. ]);   

  16.   

消息体只能是字符串,但你可以用JSON.stringify和JSON.parse将消息转换成更有意义的数据体!

autofocus属性

autofocus属性能够让BUTTON, INPUT, 或 TEXTAREA元素在页面加载完成时自动成为页面焦点:

XML/HTML Code复制内容到剪贴板

  1. <input autofocus="autofocus" />  

  2. <button autofocus="autofocus">Hi!</button>  

  3. <textarea autofocus="autofocus"></textarea>  

在像谷歌搜索页面那样的有固定模式的地方,autofocus属性是最理想的一个功能。

到此,关于“HTML5有什么新功能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. PyCharm2019.3有哪些新功能
  2. Python 3.8 有哪些新功能

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

html5

上一篇:Html标签对提升SEO优化有什么作用

下一篇:HTML5怎么打开本地app应用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》