热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端开发必备知识点汇总与深入解析

Markdown语法说明:http:www.appinn.commarkdown1、前端碎片知识总结篇1.1关于浏览器IE的内核是Trident、Mozilla的内核

Markdown语法说明:http://www.appinn.com/markdown/

1、前端碎片知识总结篇

1.1 关于浏览器

IE的内核是Trident、Mozilla的内核是Gecko、Chrome的内核是Blink(Webkit的一个分支,谷歌和Opera合作推出)、Opera的内核是Blink(原内核是Presto,现已废弃。)

1.2 jQuery中this与$(this)的区别是什么?

$(#textbo.hover(){function() {this.title = "Test";},fucntion() {this.title = "OK”;}
})

这里的this其实是一个Html 元素(textbox),textbox有text属性,所以这样写是完全没有什么问题的。
但是如果将this换成$(this)就不是那回事了,Error–报了。this与$(this)的区别在此。

错误代码:

//Error Code:
$("#textbox").hover(function() {$(this).title = "Test";},function() {$(this).title = "OK";}
);

这里的$(this)是一个JQuery对象,而jQuery对象沒有title 属性,因此这样写是错误的。

JQuery拥有attr()方法可以get/set DOM对象的属性,所以正确的写法应该是这样:

$("#textbox").hover(function() {$(this).attr(’title’, ‘Test’);},function() {$(this).attr(’title’, ‘OK’);}
);

1.3 有关于闭包的理解。

请看下面一段代码:

(function(x){return function(y){return function(z){alert(123);return x+y+z;//结果弹出123,并返回6} }
}(1)(2)(3));

这就是一个典型的闭包

定义匿名函数后立刻执行,并且不会引起window属性的变化,例如:

for (var i&#61;0; i<10; i&#43;&#43;) {alert(window.i); // window.i&#61;10
}

换成匿名函数调用&#xff0c;如下代码&#xff1a;

(function(){
for (var i&#61;0; i<10; i&#43;&#43;) {}
alert(window.i); // window.i &#61; undefined
})();

这样子就不会引起window属性的增加。

1.4 Jquery 中文Api 地址&#xff1a;

http://jquery.org.cn/jqapi

1.5 查询字符串参数

/***************************************
***********查询字符串参数****************
***************************************/
function getQueryStringArgs(){//取得查询字符串并去掉开头的问号var gs &#61; (location.search.length > 0 ?location.search.substring(1) : ""),//substring(start,stop) 查询字符串介于两个指定下标之间的字符//保存数据的对象args &#61; {},//取得每一项items &#61; gs.length ? gs.split("&") : [],//split("&") 将字符串分隔成字符串数组item &#61; null,name &#61; null,value &#61; null,//for循环中使用i &#61; 0,len &#61; items.length;//逐个将每一项添加到args对象中去for (i&#61;0; i}
var a &#61; getQueryStringArgs();
console.log(a);

1.6 居中显示的一些方法

  • 1.6.1 宽高固定的盒子居中

    结构:


样式&#xff1a;

/*宽高固定 居中显示核心代码*/
.sl-hvalign{position:relative}
.sl-hvslign-inner {width: 530px;height: 320px;position: absolute;top: 50%;left: 50%;margin: -160px 0 0 -265px; /* 向上偏移高度1/2 向左偏移宽度1/2 */
}

也可以使用 transform 偏移&#xff0c;样式:

.sl-hvslign-inner{transform: translate(-50%, -50%);
}

因为使用百分比值定位&#xff0c;参考点在盒子的中心。
宽高未知的情况下&#xff0c;由此方法可延伸&#xff0c;使用Javascript动态获取。

  • 1.6.2 模板化居中显示&#xff1a;(以下方法可供模板化的CSS class)

结构&#xff1a;

<--! you Code... -->


样式&#xff1a;

.sl-hvalign{display:table;overflow:hidden;margin:0 auto;height:100%;*position:relative
}
.sl-hvalign-cnt{dispaly:table-cell;vertical-align:middle;*position:absolute;top:50%
}
.sl-hvalign-cnt-inner{*position:absolute;*top:-50%
}

来自&#xff1a;饿了么前端工程师 sofish

1.7 《Javascript 高级程序设计》的一些代码

/***************************************
***********查询字符串参数****************
***************************************/
function getQueryStringArgs(){//取得查询字符串并去掉开头的问号var gs &#61; (location.search.length > 0 ?location.search.substring(1) : ""),//substring(start,stop) 查询字符串介于两个指定下标之间的字符//保存数据的对象args &#61; {},//取得每一项items &#61; gs.length ? gs.split("&") : [],//split("&") 将字符串分隔成字符串数组item &#61; null,name &#61; null,value &#61; null,//for循环中使用i &#61; 0,len &#61; items.length;//逐个将每一项添加到args对象中去for (i&#61;0; i}
var a &#61; getQueryStringArgs();
console.log(a);

2 关于移动Web开发&#xff1a;

2.1 关于PPI

 PPI全称为Pixel Per Inch&#xff0c;译为每英寸像素取值&#xff0c;更确切的说法应该是像素密度&#xff0c;也就是衡量单位物理面积内拥有像素值的情况。PPI中的pixel指的应该是物理像素。
显示器上的像素我们就称之为物理像素(physical pixel)或者设备像素(device pixel)。
CSS像素从来都只是一个相对值。在高PPI的设备上&#xff0c;CSS像素甚至在默认状态下就相当于多个物理像素的尺寸。

.hack {background-color:red\0; /* ie 8/9*/background-color: blue\9\0; /* ie 9*/background-color: blue\9; /* ie 6、7、8*/&#43;background-color:#CDCDCD; /* ie 6、7*/*background-color:#dddd00; /* ie 7*/_background-color:#CDCDCD; /* ie 6*/
}

3.3 html中的hack代码

除IE外都可识别









4 开发工具

4.1 相关书籍

前端书籍前端书籍前端书籍前端书籍前端书籍前端书籍前端书籍前端书籍

5 前端性能与优化




推荐阅读
  • 我的读书清单(持续更新)201705311.《一千零一夜》2006(四五年级)2.《中华上下五千年》2008(初一)3.《鲁滨孙漂流记》2008(初二)4.《钢铁是怎样炼成的》20 ... [详细]
  • 深入探讨前端代码优化策略
    本文深入讨论了前端开发中代码优化的关键技术,包括JavaScript、HTML和CSS的优化方法,旨在提升网页加载速度和用户体验。 ... [详细]
  • 实践指南:使用Express、Create React App与MongoDB搭建React开发环境
    本文详细介绍了如何利用Express、Create React App和MongoDB构建一个高效的React应用开发环境,旨在为开发者提供一套完整的解决方案,包括环境搭建、数据模拟及前后端交互。 ... [详细]
  • 1.绑定htmlcss1.1对象语法:  传给v-bind:class一个对象,以动态地切换class   ... [详细]
  • 解决JavaScript中法语字符排序问题
    在开发一个使用JavaScript、HTML和CSS的Web应用时,遇到从SQLite数据库中提取的法语词汇排序不正确的问题,特别是带重音符号的字母未按预期排序。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 本文探讨了在一个物理隔离的环境中构建数据交换平台所面临的挑战,包括但不限于数据加密、传输监控及确保文件交换的安全性和可靠性。同时,作者结合自身项目经验,分享了项目规划、实施过程中的关键决策及其背后的思考。 ... [详细]
  • 本文介绍了一个使用Spring框架和Quartz调度器实现每周定时调用Web服务获取数据的小项目。通过详细配置Spring XML文件,展示了如何设置定时任务以及解决可能遇到的自动注入问题。 ... [详细]
  • 根据官方定义,RxJava是一种用于异步编程和可观察数据流的API。其核心特性在于流式处理能力和丰富的操作符支持。 ... [详细]
  • 在Effective Java第三版中,建议在方法返回类型中优先考虑使用Collection而非Stream,以提高代码的灵活性和兼容性。 ... [详细]
  • 使用HTML和JavaScript实现视频截图功能
    本文介绍了如何利用HTML和JavaScript实现从远程MP4、本地摄像头及本地上传的MP4文件中截取视频帧,并展示了具体的实现步骤和示例代码。 ... [详细]
  • 数据类型--char一、char1.1char占用2个字节char取值范围:【0~65535】char采用unicode编码方式char类型的字面量用单引号括起来char可以存储一 ... [详细]
  • 深入解析Java中的空指针异常及其预防策略
    空指针异常(NullPointerException,简称NPE)是Java编程中最常见的异常之一。尽管其成因显而易见,但开发人员往往容易忽视或未能及时采取措施。本文将详细介绍如何有效避免空指针异常,帮助开发者提升代码质量。 ... [详细]
  • 通过 CSS 中的 transition 属性,可以轻松实现元素状态变化时的平滑过渡效果。本文将详细介绍如何使用 transition 属性,并提供一个具体的示例。 ... [详细]
  • 微软推出Windows Terminal Preview v0.10
    微软近期发布了Windows Terminal Preview v0.10,用户可以在微软商店或GitHub上获取这一更新。该版本在2月份发布的v0.9基础上,新增了鼠标输入和复制Pane等功能。 ... [详细]
author-avatar
yukiyu227232
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有