首页前端开发HTMLHTML5中原生的右键菜单创建方法

HTML5中原生的右键菜单创建方法

时间2024-01-24 19:28:30发布访客分类HTML浏览537
导读:收集整理的这篇文章主要介绍了HTML5中原生的右键菜单创建方法,觉得挺不错的,现在分享给大家,也给大家做个参考。 即使是JavaScript被禁止,这些右键菜单仍然能正常显示。所以,如果你想尊重用户的选择,最好的方法是用JavaS...
收集整理的这篇文章主要介绍了HTML5中原生的右键菜单创建方法,觉得挺不错的,现在分享给大家,也给大家做个参考。

即使是JavaScript被禁止,这些右键菜单仍然能正常显示。所以,如果你想尊重用户的选择,最好的方法是用JavaScript来创建这些菜单元素,注入到DOM元素里,这样,当JavaScript被禁止时,这些右键菜单也不显示了。

HTML5规范里有一个被大家忽略里的好东西,那就是右键菜单。HTML5里的右键菜单规范显示,程序员可以通过创建简单的HTML5menu和menuITem标记来生成右键菜单。菜单只在指定区域的右键菜单内显示。所以,你不需要再通过创建浏览器插件来实现这种效果。下面就让我来展示如何用基本的HTML标记来创建个性化的右键菜单!

HTML代码

首先我们定义一个HTML区域,给它分配一个ID,之后我们要用到这个ID:

XML/HTML Code复制内容到剪贴板
  1. section contextmenu="mymenu">   
  2.  !--    
  3.   为了让代码清晰整洁   
  4.   我会把菜单放到这个元素内部    
  5.  -->   
  6. /section>   
  7.   

定义好这个元素后,现在我们来创建真正的菜单元素:

XML/HTML Code复制内容到剪贴板
  1. menu tyPE="context" id="mymenu">   
  2.  menuitem label="重新加载本文" onclick="window.location.reload(); " icon="/images/refresh-icon.png"> /menuitem>   
  3.  menuitem label="跳跃至评论区" onclick="window.location='#comments'; " icon="/images/comment_icon.gif"> /menuitem>   
  4.  menu label="分享本文至..." icon="/images/share_icon.gif">   
  5.   menuitem label="新浪微博" icon="/images/twitter_icon.gif" onclick="goTo('//twitter.COM/intent/tweet?text=' + document.title + ':  ' + window.location.href); "> /menuitem>   
  6.   menuitem label="qq空间" icon="/images/faceBook_icon16x16.gif" onclick="goTo('//facebook.com/sharer/sharer.php?u=' + window.location.href); "> /menuitem>   
  7.  /menu>   
  8. /menu>   
  9.   

注意,这里的menu标记的ID和上面的contextmenu里的值是一致的,这样做的效果是,只有在上面的那个section区域里点击右键时才会显示这些右键菜单。这些菜单里可以配置菜单名,菜单图标和onclick事件,用来声明它们的意义和要执行的动作。动作可以是预先定义的JavaScript动作,或是执行inline的JavaScript代码。相同的菜单可以放到页面的多个区域,不需要重复创建。

目前只有@R_406_1271@是唯一实现了这个API的浏览器。一些特别重要的功能我一般不喜欢放到右键菜单里,但有这样的功能当然是十分方便,这个API的主旨是提高易用性而不会有任何负面影响。我在菜单里放置的分享功能就是一个很好的例子。相信你在你的项目里也经常使用右键菜单,不是吗?

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

右键菜单"

若转载请注明出处: HTML5中原生的右键菜单创建方法
本文地址: https://pptw.com/jishu/585654.html
使用HTML5里的classList操作CSS类 用html5的canvas和JavaScript创建一个绘图程序的简单实例

游客 回复需填写必要信息