本人为项目组制定的一份页面优化指南(easyui页面优化方案)_html/css_WEB-ITnose
#本人为项目组制定的一份页面优化指南(easyui页面优化方案)##背景这是一篇我之前为项目组制定的页面优化指南,主要是面向表单页面,典型的像[注册用户](https://passport.cnblogs.com/register.aspx)那样的页面。本人的项目主要是基于easyui的,一开始都是直接用其中的layout进行布局,但对于一个实际项目中有100-200甚至更加多字段的表单项,载入的效率很成问题经过**本人的分析**(具体的分析过程见[这里](http://www.cnblogs.com/p2227/p/3540858.html)),发现layout,datebox,combobox及一些panel的衍生组件(其实datebox和combobox中也有panel)都是罪魁祸首所以本人重新写了一个针对表单页面的优化方案,包括文档和相应的代码,本博主要是其中的文档部分##文档如果文档在网页上显示有问题,可以直接下载[PDF格式](http://files.cnblogs.com/p2227/%E9%A1%B5%E9%9D%A2%E4%BC%98%E5%8C%96%E6%8C%87%E5%8D%972.pdf)>页面(登记表)优化指南一、 文档目的引导及记录一套项目页面(尤其是登记表页面)的优化方案二、 优化要点1.文档声明文档声明必须置于网页的HTML部分的最开始,标签之前。它影响着整个网页的解释(兼容性及效率问题)。目前项目中使用的声明是<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">`PS:其实本人还是倾向于向前走,拥抱HTML5的`2.HTML架构页面元素结束之前不要放太多的script标签,一个带src的script标签会引起一次请求,如果标签中的代码另外发起了ajax请求更加需要置后。为了便于开发,一部分通用的JS可能置于body之前,即整体代码架构如下://在body之前放置一些通用JS<body class="wds-layout-body><div id="center-layout" class="wds-layout-scroll wds-layout-north">主体内容</div><div id="south-layout" class="wds-layout-button wds-layout-south">下方按钮</div></body>//在body之后放置一些业务JS,尤其是当中有ajax请求的js3.内容布局3.1 尽量少用easyUI的Panel及Panel的衍生组件(layout,Tabs,datebox)去布局3.2 对于登记表,必须要有**<html>** 及 **<body>**元素。具体代码结构如下:(参考某某页面`这里跟项目实际路径有关,省略`)<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html xmlns="http://www.w3.org/1999/xhtml">//其他代码<body class="wds-layout-body"><div id="center-layout" class="wds-layout-scroll wds-layout-north">主体内容</div><div id="south-layout" class="wds-layout-button wds-layout-south">下方按钮</div></body></html>再执行一下js代码:**$.applyLayout();**则会生成一个固定有north和south布局的页面4.字典项4.1 简单的、变化小的字典项(4项及以下)应该直接radio/checkbox置于页面新封装$.omDic()组件,参考dicQuery.js,使用方法:`此处省略100字,因为是跟项目后台有关联的`5.选择器尽量少避免使用复杂的选择器,能直接用ID尽量用ID选择。6.子表子表不用tab页方式展示,利用点击按钮后弹出对话框的方式展现。7.折叠如果内容太多,需要折叠分类显示,则在相应的行上面加上 ```htmlclass="list_colspan" ```即可,逻辑处理置于**$.applyLayout**函数中(不要用easyUI的accordion)三、 注意问题1.养成良好习惯,HTML元素要正确闭合,javascript中不要放置多余的逗号在eclipse中用正则表达式 ```html ,\s*[\r\n][\r\n]\s*\} ```去搜索,能查找出js中多余的逗号2.能用HTML完成的内容尽量不要用CSS/JavaScript去完成,能用CSS去完成的内容尽量不要用JavaScript去完成如鼠标提示最省资源的方式是用title属性去完成,其次用:hover伪类,用JavaScript事件最耗资源3.项目内容稳定后,应该将变化小的HTTP请求(如查询字典)改成get请求以缓存4.项目内容稳定后,应该将js及css压缩、合并以减少请求时间5.项目内容稳定后,应该将图片合并,利用css sprite定位,以减少请求次数##优化后的页面示例[DEMO](http://p2227.github.io/demo/applyLayout/playout.html)

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

이 기사는 HTML & lt; Progress & Gt에 대해 설명합니다. 요소, 그 목적, 스타일 및 & lt; meter & gt의 차이; 요소. 주요 초점은 & lt; progress & gt; 작업 완료 및 & lt; meter & gt; Stati의 경우

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

이 기사는 HTML & LT; Datalist & GT에 대해 논의합니다. 자동 완성 제안을 제공하고, 사용자 경험을 향상시키고, 오류를 줄임으로써 양식을 향상시키는 요소. 문자 수 : 159

이 기사는 HTML & lt; meter & gt에 대해 설명합니다. 범위 내에 스칼라 또는 분수 값을 표시하는 데 사용되는 요소 및 웹 개발의 일반적인 응용 프로그램. & lt; meter & gt; & lt; Progress & Gt; 그리고 Ex

anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...
