Axure實(shí)現(xiàn)Material Design的按鈕波浪特效

15 評論 9853 瀏覽 28 收藏 6 分鐘

最近在寫一個(gè)谷歌材料設(shè)計(jì) Material Design風(fēng)格的WEB產(chǎn)品,在開發(fā)過程中將產(chǎn)品原型做成了Axure元件庫,當(dāng)然目前沒有完全完成。本文將以實(shí)現(xiàn)谷歌材料設(shè)計(jì)按鈕的波浪特效為例,提供一種新的自定義Axure元件樣式的方法。

需要說明的是:本文所提供的方法已經(jīng)最大程度小白化,簡單易用,但是對于產(chǎn)品經(jīng)理來說,本文的教程可能不具有實(shí)際的意義,僅提供給喜歡研究Axure Or Code的玩家。

一、效果預(yù)覽

(1)視頻預(yù)覽

點(diǎn)擊查看視頻

(2)網(wǎng)頁預(yù)覽

在線預(yù)覽

二、實(shí)現(xiàn)原理

(1)波浪效果的實(shí)現(xiàn)需要特定的CSS和JS文件,但是在Axure里我們并不能直接Code。

(2)Axure提供了【當(dāng)前窗口打開鏈】的接口,通過這個(gè)接口可以直接加載Javascript,它提供了Axure和前端代碼直接交互的能力,正因?yàn)檫@樣,Axure在前端樣式和交互上有了更加廣闊的擴(kuò)展空間。

所以我們可以將外部CSS或JS文件放到Javascript中,通過在【頁面載入】的時(shí)候,添加用例【當(dāng)前窗口打開鏈接】來加載外部CSS或JS實(shí)現(xiàn)自己想要的樣式或效果:

在打開鏈接處JS代碼格式為:

?javascript:需要執(zhí)行的代碼;

三、最終實(shí)現(xiàn)

(1)波浪特效所需要的外部JS和CSS已經(jīng)封裝在代碼中,你只需要將如下代碼添加到:【用例】-【頁面載入時(shí)】-【打開鏈接】-【當(dāng)前窗口】-【鏈接到URL或文件】-【超鏈接】 處。

如果你會Code可以把JS和CSS文件下載下來根據(jù)需要實(shí)現(xiàn)不同的效果…

javascript:$(“<link>”).attr({ rel: “stylesheet”,type: “text/css”,href: “https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.css”}).appendTo(“head”);
$(“<link>”).attr({ rel: “stylesheet”,type: “text/css”,href: “https://cdn.lylares.com/wave/static/waves.min.css”}).appendTo(“head”);
$.getScript(“https://cdn.lylares.com/wave/static/js/waves.min.js”);

這段代碼通過Jquery向頁面引入了兩個(gè)CSS文件和一個(gè)JS文件其中:

$(“<link>”).attr({ rel: “stylesheet”,type: “text/css”,href: “https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.css”}).appendTo(“head”);

為預(yù)覽Demo網(wǎng)頁中所使用的圖標(biāo)字體CSS,在實(shí)際項(xiàng)目中你可以刪掉,只保留第一行的javascript:和第三行及以后的代碼。

第三行及以后的代碼為材料設(shè)計(jì)按鈕波浪效果的核心CSS和JS文件。

這樣就實(shí)現(xiàn)了在Axure生成的HTML文件中自動加載外部的JS或CSS文件,接下來只需要在Axure軟件中進(jìn)行簡單的按鈕添加或修改設(shè)置即可。

(2)按鈕設(shè)置:如下圖所示,在Axure中請?jiān)谧笊辖窃O(shè)置按鈕的類別:Primary Button和Button。

  1. Primary Button建議設(shè)置為方形按鈕,圓角不要太大,在方形按鈕下太大的圓角將會影響波浪效果,這也是目前的一個(gè)不完美的地方,后面應(yīng)該會改進(jìn)。
  2. Button建議設(shè)置為圓形按鈕。

如果你是直接在元件庫中拖動的按鈕就無需設(shè)置,只需要注意兩種Button所對應(yīng)的圓角樣式。

四、注意事項(xiàng)

文中代碼可能由于轉(zhuǎn)義的原因顯示不全,請以圖片中所示代碼為準(zhǔn),你也可以參考附件的rp文件。

五、原型RP下載

rp下載鏈接

 

本文由 @?liulin 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載

題圖來自Unsplash,基于CC0協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 厲害,感謝分享!

    來自北京 回復(fù)
  2. 點(diǎn)擊動作都沒 也不知道你們是怎么學(xué)會的

    來自北京 回復(fù)
    1. 如果還需要設(shè)置點(diǎn)擊動作,那還加載那個(gè)外部js干什么呢。。。做這個(gè)的初衷就是為了最簡單化修改按鈕的初始點(diǎn)擊效果。

      來自重慶 回復(fù)
  3. 學(xué)習(xí)了,感謝

    來自北京 回復(fù)
  4. 厲害了學(xué)習(xí),學(xué)習(xí)。

    來自浙江 回復(fù)
  5. 下載的源文件也沒有效果啊,點(diǎn)了也沒反應(yīng)

    來自上海 回復(fù)
  6. 厲害了我的哥

    來自江蘇 回復(fù)
  7. 實(shí)在是在震撼了,原來Axure還可以做到點(diǎn)呢?。?!

    來自上海 回復(fù)
  8. 密碼呢

    回復(fù)
  9. 厲害,學(xué)習(xí)一下

    回復(fù)
  10. 為何跟著操作做還沒有效果?代碼沒問題呀

    來自廣東 回復(fù)
    1. 姿勢不對?F5 預(yù)覽不行的,效果只能生成html后才能看到??。

      回復(fù)
  11. ??

    來自廣東 回復(fù)
  12. 多謝分享

    來自上海 回復(fù)