给准备开始前端开发的你的一些小建议

作者: 7091a52ac9e5 | 来源:发表于2016-07-14 14:22 被阅读478次

    明确你面临的挑战:不同的浏览器

    • Firefox已经其它一些知名度较低的浏览器使用一种称作Gecko的开源引擎;
    • Safari和Chrome都使用一种叫WebKit的开源渲染引擎,但二者具有不同的JavaScript引擎。Chrome使用Google V8,Safari使用其自有的闭源引擎,由于二者具有相同的渲染引擎,因此它们具有很多相似的特性;
    • Opera使用一种叫做Presto的闭源引擎;
    • IE使用一种叫做Trident的闭源引擎,ie6,ie7的该引擎是让人恐惧的,在ie8上稍有改善,在ie9及以后改进很大。

    在专业的讨论中Gecko, V8, Webkit经常被提到,Trident, Presto使用较少。

    有时候,跨浏览器的开发变得复杂,浏览器根据其支持情况可以被划分为A,B,C三类;

    • A.最新的Firefox, IE, Safari/Chrome

      支持情况理想;

    • B. Opera以及较新版的主流浏览器

      支持情况足够好,但是在外观和使用上可能具有一些缺点;

    • C. 老版主流浏览器

      只支持核心功能

    选用现代的DOCTYPE

    在学习Html的过程中,你可能已经知道两种渲染模式:标准模式(Standards)和怪异模式(Quirks ),实际上还存在第三种渲染模式“几乎标准模式”(almost standards),可以在这里查看其详细信息。

    浏览器通过识别html顶部DOCTYPE的类型选择对应的渲染模式。

    对于现代的站点来说,
    <!DOCTYPE HTML>
    是最好的。

    这种声明让现代浏览器在标准模式下渲染网页,让老一些的浏览器在几乎标准模式下渲染网页。

    值得注意的是,渲染模式的选择不仅关乎html,javascript的一些特性也依赖于渲染模式,尤其是涉及到css盒子以及定位等相关功能时。

    样式的应用也是不同的,比如说在ie7上,严格模式时伪类:hover可以在任何元素上使用,而在非严格模式时,其只能用在链接上。

    没使用正确的DOCTYPE会使你的程序出现一些莫名奇妙的问题,记住要使用<!DOCTYPE HTML>

    合适的学习资源

    如何使用合适的参考手册

    网上有两大主流的关于JavaScript的手册.

    • 一是来自微软的MSDN,这里通常把JavaScript叫做“JScript”

      在此查看资料时可以在Google里输入类似“RegExp msdn”或“RegExp msdn jscript”这样的语句来搜索。这里适合查询IE相关特性的信息;

    • 另一个是Mozilla社区的MDN;

      在此查看资料时可以在Google里输入类似“RegExp msc”,这里适合查询通用或者火狐相关的特性;

    不兼容性

    前端开发会碰到很多因夸浏览器而产生的不兼容问题,http://www.quirksmode.org/这个网站可以帮你查询兼容性,当然也可以使用can i use.

    对ECMAScript的说明

    对Javascript进行详细说明(对语法,基本对象以及算法的正式描述)的语言叫做ECMAScript

    为什么不叫JavaScript
    JavaScript这个商标为Oracle(甲骨文)公司拥有(旧为Sun公司拥有,Sun被Oracle收购)

    选择叫做ECMAScript使得该标准独立于商标所有者。

    ECMAScript对JavaScript如何工作进行了详细的描述,它是一个超前的信息源。

    我们处于一个不断变化的时代,现在的标准是ES6,但是浏览器还处于不断完善这些功能的过程中;过去的ES5和ES3已被大多主流浏览器所支持。

    当你想深入学习JavaScript是如何工作的,ECMAScript是很好的信息源。不过需要注意,其中一些功能可能浏览器当前还不支持。

    HTML5

    JavaScript是一门通用的语言,这就是为什么ECMAScript只字不提浏览器的问题。

    关于这个问题,HTML5里有详细的介绍。

    W3.org DOM specifications是一个非常大但是很有价值的地方,可以把他们当做参考。搜索时可以在Google里输入”something site:w3.org”来查找DOM以及事件相关的事情。

    不过W3描述的是一种理想的状态,可能和实际有所区别。

    有用的链接

    相关文章

      网友评论

      本文标题:给准备开始前端开发的你的一些小建议

      本文链接:https://www.haomeiwen.com/subject/nqbejttx.html