一些js插件(不间断收集)
前言
现代浏览器中,js插件无疑是强大的。但是,太多乱七八糟的js插件,确实令人讨厌。而且,每一个js插件,以及每个gem包,都意味着一个新的学习点。所以,想要将削减一些无用的学习点。
前台中的js
jquery.js和jquery_ujs.js
bootstrap.js其中包含如下的js插件: jquery.datepicker.js, bootstrap-transition.js bootstrap-alert.js bootstrap-modal.js bootstrap-dropdown.js bootstrap-scrollspy.js bootstrap-tab.js bootstrap-tooltip.js bootstrap-popover.js bootstrap-button.js bootstrap-collapse.js bootstrap-carousel.js bootstrap-typeahead.js bootstrap-affix.js
jquery-ui-1.9.2.custom.min.js : jquery ui的
jquery.ias.js :
jquery.powertip.min.js : 提示插件
jquery.masonry.min.js : 瀑布流布局的插件,与 ias插件协同使用。
jquery.styleSelect.min.js : 自定义下拉风格的插件
jquery.Jcrop.js : 上传头像截取头像,原本以为是用minimagic的gem包处理的,
jquery.select-1.3.6.js : 下拉选择插件
jquery.format_currency.js : 格式化货币, 两个使用接口:formatCurrency和toNumber
jquery.placeholders.min.js : 输入框的占位符
jquery.cookie.js : 设置网站的cookie的
jquery.smart_autocomplete.js : 自动补全插件.
jquery.validate.min.js : 验证插件,项目存在很多插件相关的js或者rails的gem包。
hogan.js : javascript模板引擎,mustcache模板(曾做过相关了解,觉得其逻辑功能相当的弱,难道目的就是将数据逻辑处理全部放在服务器端)
date.js : 日期插件,与date-picker属性, 自动附加新效果。
jquery.fixbox.js : 将页面的部分固定在网站的某些部分
jquery.atwho.js : 类似微博那样的,@谁然后进行提示。
jquery.alphanum.js : 限制文本框输入字符的插件,常用的方法有: .alphanum(); .alpha(); .numeric();
jquery.number.js : 用来格式化显示的数字的插件,使用方法: number();
jquery.numeric.js : 限制输入字符的插件
jquery.chained.js : 网页之间的链式的向导
waypoints.min.js : 滚动事件监听插件, 使用方式: waypoint
optimizely.js : ?
faye.js : 消息通知,但是99测试服务上的存在一些问题,如果了解更多的话,可以将其替换掉。
自写的js: app.js, tophold.common.js, application.js
js和css优化这种事情,对于我这个新手,规则只有一个,不用的就删掉,留着干吗!
后台的js
jquery, jquery_ujs
: 有jquery-rails
gem包提供的js,其中jquery_ujs是对jquery的文件上传的支持。
jquery-ui, jquery-ui-timepicker-addon, jquery-ui-timepicker-zh-CN: client_side_validations
twitter/bootstrap : bootstrap的css样式的支持。
rails.validations, rails.validations.simple_form
: client_side_validations
类似的gem包所提供的相关的js,主要是用来simple_form的相关验证。
jquery.tokeninput : 标签输入提示显示
jquery.smart_autocomplete : jquery自动补全的js
select2 : select2-rails
gem包提供的,精巧别致的下拉按钮,主要提供响应的<select>
及其内容。
image-picker : 下拉列表选择图片,曾经使用的过。但是现在已经没有用处了。
modal : 上传图片的model
best_in_place.purr
,best_in_place
: best_in_place
的gem包提供的,在列表中点击触发置顶之类的。
jquery.remotipart :
tagmanager : tag管理软件js,输入tag的事件处理
typeahead.min : 辅助输入提示
由于项目中存在jst模板,所以,很好奇到底是谁编译的。问了一下前辈,知道是underscode编译的,具体的是说,是underscore-template-rails
处理的,仔细想想了,网站里的模板语言还真是丰富多彩:
- mustache - hogan.js,Rails友好的模板语言
- JST - underscore, javascript模板语言
- erb - erb,ruby嵌套的模板语言
- haml - 人性化的haml模板语言
简单来说,就是模板语言太多了。所以,想要删除掉一些,但实际上,我想要做的事情和最后做成的事情之间存在着巨大的鸿沟,大概所谓的理想和现实之间的差距吧。目标是明确的,那就是,出于想要对所学习的事物有个全景式的认识,想要逐步的将项目重构到一个相对干净的状态。
JST作为一门原生Javascript的模板语言,存在很多可以编译,比如trimpath,以及underscore。关于trimpath一些相关的资料收集如下:
- 项目主页: https://code.google.com/p/trimpath/
- JST模板语言介绍: https://code.google.com/p/trimpath/wiki/JavaScriptTemplates
傲娇的使用Disqus