前端开发总结(四)

本贴最后更新于 4209 天前,其中的信息可能已经事过景迁

图片

    最好一种类型的背景图片可以放在一个png里面,且该图片不用repeat,使用background-position来展示,比如左右箭头(可点击与不可点击)

    全局性的图片,比如loading图,背景图等可以在用户登录页面预先加载,提高用户体验。

页面布局

    酌情考虑是用table还是ul还是div,且在定宽之前要以需显示最多字符的情况为参考

    要注意的是在EDM(电子邮件营销)里面的内容最好采用table的方式,具体原因和EDM的详细情况会另外写一篇

文件上传

    需要在配置里面加上

<result name="success" type="json">

           <param name="contentType">text/html</param>

</result>

    否则IE下会将返回的data当做文件来下载,前提是使用json格式返回的数据

文件下载

    如果不是使用window.location.href的方式下载文件,那么在使用form插件时要加jframe:true

但是加了这个之后action无法进入success方法,会canceled掉

JS

  样式的改变用addClass和removeClass,少用级联样式形式

  尽可能用html()替代append(),prev()等插入操作

  选择器多使用ID而不是class,或者在选择器之前加上ID等减少遍历次数,$(‘#div’).find(‘.a’)的效率高于$(‘#div .a’).jquery查找节点是从右往左查找,会先查找‘.a’再判断’.a’是否有’#div’节点。

  对于一些公共的方法或者组件,可以将属于同一种类型的方法封装为一个util对象,内部引用通过this.XXX()

外部引用通过utilxxxx.xxxx().同时要注意JS对于私有方法也有规范,通常为方法名前加_。

  提高jQuery效率: http://www.jb51.net/article/24740.htm

  在循环中使用i<length时,length使用变量缓存下来,否则每次判断都会获取一次数组的length

JSON

    后台返回的json如果使用Integer型的值为json对象的属性,会出错,即这种形式{Integer(Key):Value}

调试

通过.click .hover .focus等绑定的事件可以通过$(obj).data(‘events’)[‘click…’][0].handler查看具体的JS代码,通过.bind(),.live()等绑定的方法不能直接查看

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...