日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

利用HTML 5中的Menu和Menuitem元素快速创建菜单

發布時間:2024/6/21 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 利用HTML 5中的Menu和Menuitem元素快速创建菜单 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文:Introducing the HTML5 “Menu” and “Menuitem” Elements

譯文:HTML 5中Menu和Menuitem的元素介紹

譯者:dwqs

今天向你介紹HTML 5中的兩個元素:Menu和Menuitem,這兩個元素是W3C交互元素中的一部分?,F在Web的演變已經不僅僅局限于文檔之間的鏈接,在APPs中,頁面的行為越來越多,因此,是時候形成一個Web交互的標準了。

Menu和Menuitem是在開發者中談論最熱門的兩個元素,可能是由于主流瀏覽器對其缺乏足夠的支持。在我寫這篇文章的時候,FireFox已經實現了這個元素。

Menu和Nav的對比

當談到Menu時,難免不和Nav元素混淆。區分這兩個元素,文檔規范是一個不錯的工具。

Nav元素是HTML導航元素,代表著Web頁面的導航塊,一般包含一個links集合,允許用戶在頁面內跳轉或者跳轉到其它網站頁面。

Menu是一系列菜單命令的集合,跟桌面或者手機應用有點相似。桌面應用通常使用工具條菜單或者上下文菜單來展現各種任務。Nav和Menu最根本的不同之處在于:Nav元素包含導航鏈接去幫助用戶在Web頁面之間跳轉,而Menu應該讓用戶執行特定的任務。

使用Menu元素

在 一個容器中,Menu元素用于創建上下文、工具欄和彈出菜單。然而,后面的兩個功能還沒有瀏覽器實現,包括FireFox。此刻,很難去猜測瀏覽會怎么實 現他們以及看起來會是什么樣子。不過對于toolbar和popup菜單的規范在下一代交互設計中做些改變也是一個不錯的機會。

對于現在,我們將集中注意力到上下文。

上下文

當我們右擊一個應用時,會出現一個上下文菜單。顯示的選項取決于用戶在哪里點擊。

JavaScript 選項

通過JavaScript和JQuery插件在Web頁面上添加上下文菜單是可以實現的。問題是這種方法需要額外的標記,并且腳本會刪除瀏覽器本地的菜單,如果處理不當,將會使用戶感到失望。

本地解決方案

Menu和Menuitem一起使用,將把新的菜單合并到本地的上下文菜單。例如,給body添加一個叫“Hello World”的菜單

<body contextmenu="new-context-menu">
<menu id="new-context-menu" type="context">
    <menuitem>Hello World</menuitem>
</menu>
</body>

在上述代碼片段中,包含的基本屬性有id,type和contextmenu—它指定了菜單類型是context,同時也指定了新的菜單項應該被顯示的區域。

在示例中,當右擊鼠標時,新的菜單項將出現在文檔的任何地方,因為我們指定它的作用區域是body。

當然,你可以通過在特定的元素上給contextmenu賦值,例如div,main,section等等,來限制新菜單項的作用區域。

<body>
    <div contextmenu="new-context-menu">
    <!-- content -->
    </div>
    <menu id="new-context-menu" type="context">
        <menuitem>Hello World</menuitem>
    </menu>
</body>

當在FireFox中查看時,會發現新添加的菜單項被添加到最頂部。

添加子菜單和圖標

子菜單由一組相似或相互的菜單項組成。PS中的Image Rotation就是一個典型的例子。使用Menu添加子菜單是非常容易和直觀的。查看下面的示例代碼:

<menu id="demo-image" type="context">
    <menu label="Image Rotation">
        <menuitem>Rotate 90</menuitem>
        <menuitem>Rotate 180</menuitem>
        <menuitem>Flip Horizontally</menuitem>
        <menuitem>Flip Vertically</menuitem>
    </menu>
</menu>

在支持Menu元素的瀏覽器中運行時,將看到新菜單中添加的四個子菜單:

圖標

介紹一個新的屬性:icon,使用這個屬性可以在菜單的旁邊添加圖標。值得一提的是,icon屬性只能在menuitem元素中使用。示例代碼:

<menu id="demo-image" type="context">
    <menu label="Image Rotation">
        <menuitem icon="img/arrow-return-090.png">Rotate 90</menuitem>
        <menuitem icon="img/arrow-return-180.png">Rotate 180</menuitem>
        <menuitem icon="img/arrow-stop-180.png">Flip Horizontally</menuitem>
        <menuitem icon="img/arrow-stop-270.png">Flip Vertically</menuitem>
    </menu>
</menu>

結果如你所見的:

在菜單中添加功能

我們已經構建了一些看起來像菜單的示例,但是是沒有任何功能都的。當點擊菜單時,用戶期待一些事情發生。例如點擊Copy應該要復制文本或鏈接,點擊New Folder應該創建一個新的文件夾??梢杂肑avaScript實現這些功能。
注意:在開始之前,我建議你在JavaScript Fundamentals 看一看Jeremy McPeak’s的課程,對于任何想學習JavaScript的人都是一個不錯的開始。
利用上面的“Image Rotation”為例,讓我們添加一個當點擊時旋轉圖像的功能。CSS 3的Transform and Transition可以在瀏覽器中為我們實現這個功能。將圖像旋轉90度的樣式如下:

.rotate-90 {
    transform: rotate(90deg);
}

為了使用這個樣式,需要寫一個函數將它應用到圖像。

function imageRotation(name) {
    document.getElementById('image').className = name;
}

把這個函數和每一個menuitem的onclick屬性關聯,并且傳遞一個參數:rotate-90

<menu id="demo-image" type="context">
    <menu label="Image Rotation">
        <menuitem onclick="imageRotation('rotate-90')" icon="img/arrow-return-090.png">Rotate 90</menuitem>
        <menuitem icon="img/arrow-return-180.png">Rotate 180</menuitem>
        <menuitem icon="img/arrow-stop-180.png">Flip Horizontally</menuitem>
        <menuitem icon="img/arrow-stop-270.png">Flip Vertically</menuitem>
    </menu>
</menu>

完成這個之后,再創建將圖片旋轉180度和裁剪圖片的樣式,將每一個函數添加到獨立的menuitem中,記得傳參數 。查看效果:in the demo page.

查看更多關于Menu元素的信息:Interactive Element: The Menu Element

查看我的示例:http://jsfiddle.net/Web_Code/15pc5zfv/1/embedded/result/

總結

以上是生活随笔為你收集整理的利用HTML 5中的Menu和Menuitem元素快速创建菜单的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美亚洲在线视频 | 女人16一毛片 | 黄色成人免费观看 | 操网站| 久久久久亚洲av无码专区桃色 | 欧美日韩免费高清 | av拍拍拍| av色欲无码人妻中文字幕 | 国产一区欧美二区 | 日韩一区在线看 | 伊人五月综合 | 中文字幕网站 | 中文字幕免费看 | 丁香av| 国产日韩欧美一区二区 | 欧美日韩在线视频免费 | 少妇裸体淫交视频免费看高清 | 午夜色网 | 成人福利一区二区 | 欧美精品三区 | 成人激情自拍 | 美国毛片网站 | 一级黄色a级片 | 国产伦精品视频一区二区三区 | 久久久久久黄色 | 老熟妇仑乱一区二区av | 成人久久久精品乱码一区二区三区 | 少妇丰满尤物大尺度写真 | 蜜桃一区二区 | 久草视频免费看 | 男生插女生视频在线观看 | 日韩91精品 | 超碰www| 免费黄色国产 | 91精品国产综合久久福利软件 | 337p日本欧洲亚洲大胆张筱雨 | 4444亚洲人成无码网在线观看 | 国产亚洲精品美女久久久久 | 99re这里只有精品在线观看 | 国产福利免费观看 | 久久国产精品网站 | 中文在线a√在线 | 玉女心经 在线 | 色版视频在线观看 | 蜜桃av在线免费观看 | 国产精品福利导航 | 最近中文字幕一区二区 | sm乳奴虐乳调教bdsm | 久久免费公开视频 | 亚洲伦理在线视频 | 日本在线www | 亚洲黄色录像 | chien国产乱露脸对白 | 色综合九九 | 日本大尺度做爰呻吟 | 日韩欧美黄色片 | 成人羞羞网站 | 性――交――性――乱a | av免费久久 | av青青| jlzzjlzz欧美大全| 青青草原在线免费观看视频 | 亚洲国产精品成人无码区 | 4438亚洲最大 | 国产乱淫av麻豆国产 | 精品亚洲一区二区三区四区五区高 | 中文在线观看av | 日韩影视一区 | 夜夜狠 | 假日游船 | 日本丰满少妇一区二区三区 | 日韩欧美精品一区二区三区 | 亚洲网站在线免费观看 | 一级黄色大片免费 | 爆操女秘书| 国产精品久久久免费 | 国产免费久久久 | 一个色在线视频 | 啪啪av | 国精品一区 | xxxxx在线观看 | 美女张开腿让男人操 | 一起射导航 | 精品无码成人久久久久久免费 | 国产色无码精品视频 | 日本精品在线观看 | 黑人巨大精品人妻一区二区 | a级一片 | 欧产日产国产69 | 合欢视频污 | 先锋影音av中文字幕 | 波多野结衣在线免费视频 | 亚洲最大免费视频 | 欧美日韩欧美日韩在线观看视频 | 国产高清无密码一区二区三区 | 色呦呦在线观看视频 | 十大黄台在线观看 | 欧美丰满美乳xxx高潮www | 亚洲一区二区三区久久久 |