『壹』 為什麼小公司要用自己開發的前端框架
第一,前端框架的產生,實際上來自於「避免重復勞動」這個需求,很多組件,比如按鈕,響應式內容塊,菜單,圖文卡片都是很常見的頁面組成部分,除了CSS/JS,有些還需要處理不同瀏覽器的兼容問題。開發過一個類似的組件後,以後又遇到同樣的開發需求,自然是直接修改原來做好的要輕松得多。久而久之,最好的辦法,就是將之模塊化,要用的時候直接復制,或者做少量修改,達到更高的開發效率。
第二,從內部溝通的角度來看,有了清晰的框架結構和組件,內部人員溝通的成本降低,設計人員知道哪些是容易辦到的,因為有成型的組件,哪些是需要費更多力氣的,後端人員也是如此,UI組件化之後,後端人員無需把握細節,便能輕松知道它們是幹嘛的,可能涉及哪些後端的動作。
第三,從人才角度來看,開發自己的前端框架,內部人員對於公司的黏度將更高,因為他的大量經驗都沉澱到了這些框架中,如果離職到其他公司,又要花大量時間來和別人溝通細節。
第四,如果框架做得好,開源之後,能獲得一些用戶,這樣其實是為公司准備了一些後備人才。以後如果需要新人加入,如果他正好用過這個框架,那麼上手時間更短,也為公司節省了很多成本。
『貳』 什麼是封裝良好的前端交互組件,怎麼寫出封裝良好的前端交互組件
前景是很好的,互聯網應用開發的分工越來越細,真正專業的前端開發工程師是很使用JavaScript|ActionScript編寫封裝良好的前端交互組件。 2. 對Web項目的前端,AehvsQ
『叄』 前端ui框架好看的有哪些
推薦幾個精緻的web UI框架!
1.Aliceui
Aliceui是支付寶的樣式解決方案,是一套精選的基於 spm 生態圈的樣式模塊集合,是 Arale 的子集,也是一套模塊化的樣式命名和組織規范,是寫 CSS 的更好方式。
2.Amazeui
Amaze UI 是一個輕量級、 Mobile first 的前端框架, 基於開源社區流行前端框架編寫的。
3.sui
SUI是一套基於bootstrap開發的前端組件庫,同時她也是一套設計規范。
通過SUI,可以非常方便的設計和實現精美的頁面。
同時sui還有移動端版本msui,msui是阿里巴巴共享業務事業部UED團隊的作品。目的是為了手機H5頁面提供一個常用的組件庫,減少重復工作。
9.YDUI Touch
YDUI Touch 專為移動端打造,在技術實現、交互設計上兼容主流移動設備,保證代碼輕、性能高;使用 Flex 技術,靈活自如地對齊、收縮、擴展元素,輕松搞定移動頁面布局;實現強大的屏幕適配布局,等比例適配所有屏幕。什麼?用得不開心?輕松切換 px;自定義Javascript組件、Less文件、Less變數,定製一份屬於自己的YDUI;
10、後台UI開發框架 MuseUI
一款基於bootstrap風格,兼容於主流瀏覽器(包括IE6)的後端UI開發組件。
『肆』 前端常用的框架有哪些
jQuery,Vue,Bootstrap,react。
『伍』 前端,請問這種動效如何實現呀
有沒有用什麼UI框架呀?自己寫的話,實現流程如下
scroll事件,判斷是上滑還是下拉
獲取每個子欄目到頂部的距離,比如記錄到數組里heigtArr =[10,20,30]
然後比較scroll事件的e.detail.scrollTop與數組內每個欄目到頂部的距離heigtArr
可以定義距離正負多少合適,去取heigtArr中的值
滑動到居中位置 scrollTop = 20
『陸』 前端如何搞一套漂亮的前端界面
可以看下antd的UI框架,組件很漂亮
『柒』 前端頁面的插件有哪些
工具類
方便操作對象,數組等的工具庫
underscore.js
lo-dash與underscore.js的api基本一致。與underscore比其優勢是,效率高;可自定義構建
Sugar在原生對象上增加一些工具方法
functional.js提夠了一些Curry的支持
Watch.js監視對象或屬性的變化
bacon.js函數式編程,cool
streamjs用流的方式來對數組,對象進行系列操作
非同步流程式控制制
eventproxy朴靈出品
Arbiter.js詳細
發布訂閱
qPromise風格的
Async.js
mock
Mock.js生成隨機數據和mock Ajax 請求
jquery-mockjaxmockajax請求
時間庫
moment
datejs
瀏覽器探測
Bowser探測具體瀏覽器和版本
ua-parser-js探測具體瀏覽器和版本,操作系統,設備類型等
調試
console-polyfill能放心的使用 console.log()之類的console方法
log讓控制台輸出的log有樣式
Konsole.js在頁面的一個元素里輸出log信息詳細
uri.jsuri操作
cookie增刪改cookie的工具庫
director前端路由庫詳細
BigDecimal.js提高精度的數字操作
JSDoc根據javascript文件中注釋的信息,生成API文檔詳細
hotkeys鍵盤事件的封裝
MD5用 MD5 的方式加密文件的庫
瀏覽器增強類
讓一些舊瀏覽器變牛逼的庫
Selectivizr讓IE 6-8一些的css3選擇器
ieBetter讓ie6-8有高級瀏覽器的特性
ExplorerCanvas讓IE8-的瀏覽器支持canvas
CSS3 Pie讓IE6-9支持border-radious,box-shadow,linear-gradient。 可以使用.htc文件(注意Mine type)或.js文件。在用Pie.js時,box-radious的元素有背景色時,不顯示背景色。。。
formFive讓舊的瀏覽器支持HTML5表單的一些特性,如 placeholder,autofocus
https://github.com/anselmh/object-fit讓瀏覽器支持object-fit這css規則
HTML5 Cross Browser Polyfills一堆Polyfills
flexibility讓舊的 IE 也支持 Flexbox
選擇器增強
Lining.js讓瀏覽器實現類似::nth-line(), ::nth-last-line()的效果
未歸類
prefixfree用了它,寫css時,就不需要加瀏覽器的前綴了
表單類
jquery-file-upload上傳文件組件詳細
zTree文件樹形視圖控制項
Treed樹編輯器。感覺展示的感覺很像思維導圖
FileAPI對文件選擇框內的文件的一些處理
表單驗證
.Validate詳細
jQuery-Validation-Engine
表單元素美化
uniform提供對下拉框,單,復選框,按鈕等表單元素的美化
select2多選下拉框
selectivity和unfirom比較類似
DropKick下拉框,單,多選。外觀比uniform好
switcheryios7風格的開關組件
nouislider用滾動條來設置/控制(音量等)
range.css美化input[type=range]元素的外觀
圖片類
holderjs生成占點陣圖片
lazyload
imagesLoaded選取的圖片都載入好後執行調回
CSSgram用CSS3的Filter實現Instagram濾鏡的庫
圖標類
Icon Font匯總
SVG做的圖標
svgicons
iconic
HYBICON帶交互效果。如 hover, click
HTML字元實體圖標
http://www.amp-what.com/
transformicons圖標點擊時,會有一些變換效果。如,加號變成叉號
css3patternscss3 做的可平鋪紋理。瀏覽器兼容性不好。
瀏覽圖片
fancybox彈出查看圖片,視屏等等demo
yoxview彈出查看圖片,圖片尺寸縮放很自然
圖片牆
wookmark
UI 框架
WeUI由微信官方設計團隊為微信 Web 開發量身設計。
Framework7
UI 組件類
拖拽
dragula支持Draggable,Dropable和Sortable。感覺比jqueryUI的輕量級,好用的樣子
angular-draguladragular 官方的 angular 版本
數據可視化(圖表)
Echarts網路出品
highcharts功能強大。是收費的。
Plottable.JS基於D3的一個圖表庫
flot文檔不給力
chartJs中文文檔demo很漂亮,很清晰。比較輕量級。
ichartJs中國的一個傢伙搞的,感覺還不錯。
時間選取組件
foundation-datepicker
DatePicker一個簡單的日歷詳細
full calendar支持脫放的方式來改變待辦事宜的時間
Simple Events Calendar外觀很喜歡。收費 5$
jQuery ui datepicker經典,不是很好看
pickadate輕量級,手機友好的,漂亮。但貌似只能在彈出層中顯示,而沒有下拉這種方式顯示。
zebra-datepicker可配置性很強。但貌似只能在彈出在右上方。。。
bootstrap-datepickerbootstrap風格。
dateRangePicker選取時間段。bootstrap風格。該組件依賴Twitter Bootstrap, Moment.js和jQuery.
自定義滾動條
perfect scrollbar輕量級的滾動條。外觀與mac上chrome的滾動條一樣。
iscroll在移動設備上用不錯
載入(Loding)效果
CSS SpinnersCSS做的
Loaders.cssCSS做的
表格組件
jsGridData Grid。詳細
backgrid基於Backbone.js的DataGrid
excellentexport把表格的內容生成excel。兼容 Firefox, Chrome, IE6+
datatables表格可交互(對內容進行排序,刪除等)
handsontable生成Excel外觀的數據
JSpreadsheets表格數據的組件庫
選取顏色
Spectrum
分享到SNS
JiaThis生成分享代碼。
編輯器
ace代碼編輯器,可以用來做demo演示
ckeditor
ueditor網路做的
tinymce對html內容進行實時的編輯
summernote在移動設備上用不錯
通知組件
notie.js
HTML5播放器
jwplayer被大量網站使用
html5media簡單的h5player,輕量級
jplayer功能強太,可換膚
展示
Impress.js各種旋轉,和奇特的體驗
fullPage全屏顯示。用滾輪來翻頁詳細
zepto.fullpage專注於移動端的fullPage.js,依賴Zepto
pagePiling和fullPage類似
turn.js做一本書,帶漂亮的翻頁的效果
幻燈
slidesjs挺好用的,只是那幻燈導航的CSS都要自己寫,呵呵詳細
iSlider無任何插件依賴的手機平台javascript滑動組件詳細
bgstretcher全屏幻燈,會隨著頁面大小的變化而變化。
Swiper開源、免費、強大的移動端觸摸滑動插件Swiper中文網
coin-slider兼容IE6。蠻好的~。不過其切換方式是一塊塊的。不能配置切換方式。。。
wowslider幻燈切換時各種很炫的效果。收費。
cycle2普通的幻燈,竟然不支持垂直滾動。。。
jcarousel普通的幻燈,不兼容IE6
reveal3d滾動。做ppt相當不錯
nodePPT國人做的,做ppt也相當不錯。有些方面比 reveal做的還好。但生成導出的html有些問題
roundabout3d切換,看的後面圖片的邊
彈出框
Magnific-Popup兼容PC,Mobile。還不錯,有5k+的star
layer國人開發的,兼容ie6+。不喜歡其調用方式。
動畫效果
mixitup用漂亮的動畫效果來完成排序和篩選
jQuery.Marquee跑馬燈效果
quickflip卡片翻轉效果
卡片翻轉效果2兼容性可以。寫的比較簡單:1,只支持x方向翻轉 2,類名都是規定好的 3,只能被調用一次。 需要改寫一下。我的改進版見這里
TheaterJS模擬兩個人在屏幕上對話
midnight.js文字顏色隨著背景變,屌炸了
color-animationjquery的顏色漸變動畫插件。jquery的動畫不支持顏色值的變化。改庫提供了這個支持。
transit對元素進行css的變換
tagcanvas3D標簽雲效果詳細
iconate圖片切換動畫
Snap.js左/右側導航的出現效果
CSS shake抖動動畫
ClickSpark.js點擊後的一些酷炫的效果
視覺差插件
scrollorama比較簡單
superscrollorama能做的效果更多,但要用第三方Tween的庫,使用起來比較復雜。
scrolldeck
flash
swfobj能夠自動檢測PC、Mac機器上各種主流瀏覽器對Flash插件的支持情況。它使得插入Flash媒體資源盡量簡捷、安全。而且它是非常符合搜索引擎優化的原則的。此外,它能夠避免您的HTML、XHTML中出現object、embed等非標准標簽,從而符合更加標准。詳細
抽獎
wScratchPad刮刮卡刮獎效果
jqueryrotate旋轉插件。可以用來做轉盤抽獎效果
Intro.js用來介紹網站的功能很不錯。也可以做新手引導。
blockUILolding組件。
simple-hint提示信息。用css做的。兼容性IE 9+。
dotdotdot文字溢出時,添加在文字末尾加省略號
jQuery-menu-aim二級菜單的切換如Amazon主頁上一樣迅速
AnythingZoomer放大鏡功能
美化/高亮語法代碼
google-code-prettify
DlHighlight僅支持JavaScript、CSS、XML、HTML 這4語法高亮
please按要求隨機舒服的顏色
Awesomplete輸入的智能提示,自動補全
proTip提示。感覺比 Bootstrap 的 tip 好
Hammerjs手勢庫。封裝了 Swipe, Tap, Pinch, Pan等手勢
用戶體驗增強類
動畫
velocity提高Jquery動畫的性能。以及顏色動畫之類的新特性。
Snap.svg操作 SVG 的 JS 庫。號稱 SVG 的 jQuery。demo
walkway以動畫的方式,漸漸地畫出 SVG 的路徑。
SVG
測試
Mocha
Chai
Should
Snoion
DeviceMock.jsmock 設備。
其他類
ZeroClipboard將內容復制到剪切板兼容主流瀏覽器的解決方案詳細
html2canvashtml轉化成canvas,可以用來做截圖。詳細
Ink響應式html郵件框架
性能測試
抓取,解析RSS內容(不能跨域,所以後台要做代理,所謂的解析Rss其實就是解析xml)
jFeed
jRss簡單版的jFeed
scriptcam與攝像頭交互
cylon.js機器人框架,支持35個平台
Masonry一個瀑布流框架
devices.css移動設備邊框的外觀。做原型的時候用不錯。
Bootbox.js對bootstrap的彈出框做的一些封裝
免費皮膚
AdminLTE
Bootstrap相關類
JS Plugins倉庫
jQuery Cards高質量的 jQuery 插件網站
jster
node moles
npmrankSort npm packages by page rank
YOU MIGHT NOT NEED JQUERY PLUGINS不依賴 jQuery 的 js 插件。
awesome-nodejs
Libraries.io各種語言的庫
OniUI去哪兒網做的一套基於Avalon的框架
常用的移動端框架
zepto.js
語法與jquery幾乎一樣,會jquery基本會zepto~
最新版本已經更新到1.16
iscroll.js
解決頁面不支持彈性滾動,不支持fixed引起的問題~
實現下拉刷新,滑屏,縮放等功能~
最新版本已經更新到5.0
underscore.js
筆者沒用過,不過聽說好用,推薦給大家~
該庫提供了一整套函數式編程的實用功能,但是沒有擴展任何JavaScript內置對象。
最新版本已經更新到1.8.2
滑屏框架
適合上下滑屏、左右滑屏等滑屏切換頁面的效果
slip.js
iSlider.js
fullpage.js
swiper.js
flex布局
flex布局目前可使用在移動中,並非所有的語法都全兼容,效果良好~
『捌』 前端組件和插件的區別
組件:組件這個詞通常是現在描述產品的時候出現,一個大的產品會有很多小的部分組成,而小的部分除了是一個大的組件的部分以外,自己可能還包含更小的組件,所以組件是遞歸的,那麼組件到底是什麼呢?最常見的組件就是我們已經寫好的程序代碼,任何一小段代碼都可以是一個組件,它可以和其它代碼段連接起來組成更大的一段程序代碼,一個更大的組件,然後可能是一個函數,或者一個類程序單元,或者數個類單元文件的集成,當不同的組件的組裝形成更大的組件時候,我們實際就是在做我們通常提到的一件事情:集成,軟體中有很多集成工作要做,每日集成,重要版本集成等等。
插件:根據對組件和模塊的分析,插件屬於組件,而且還是一個程序模塊,也是一個功能模塊。插件是一種電腦程序,通過和應用程序的互動,來替應用程式增加一些特定的功能。
插件必須依賴於應用程序才能發揮自身功能,僅靠插件是無法正常運行的。
『玖』 如何寫一個前端組件
這個插件具體是干什麼,哪一層例如中間件,一般都是假設一個請求過去,在這個過程中會有無數的handle,這個傳遞的對象是什麼樣的,怎麼去處理這個過程中的數據,這個是中間件插件則有很多,UI插件,數據插件等如果要准備插件首先是數據介面規范,然後是API規范,例如jquery的擴展方法,或者angularjs的指令,這些都是API規范還有core,這個就像amd規范之類的如果樓主是指大型架構,我建議可以參考下android的概要架構圖來理解,其實原理類似的。想學這門知識的話,你可以去後盾人平台上看一下的,裡面還有視頻教學,通通高質量的,我自己也是在裡面學習。