HTML5为什么只需要写?
html5 不基于 SGML,因此不需要对 DTD 进行引用,但是需要 doctype 来规范浏览器的行为(让浏览器按照他们应该的方式来运行)而 HTML4.01 基于 SGML,所以需要对 DTD 进行引用,才能告知浏览器文档所使用的文档类型。 标准通用标记语言(以下简称“通用标言”),是一种定义电子文档结构和描述其内容的国际标准语言;[1] 通用标言为语法置标提供了异常强大的工具,同时具有极好的扩展性,因此在数据分类和索引中非常有用;[2] 是所有电子文档标记语言的起源,早在万维网发明之前“通用标言”就已存在。 更多信息请看百度百科:http://baike.baidu.com/link?url=_iGcl8EdTl_PxqCjFBikh2nmDAeReCOn_anM411vuQmjJhR-qQOPlMYYwFzSWCxcrkWWwFgfkgjxYghS-CesGIQ2cekAeRU2xYWHo87j_Xmjw9Qj1BL78psSbLvnwFxQEI8tYHTVSwO6bMrvgp8HaoxDUN9TOODGZsbiyC03DkYr7E-4roBsV5i2eE3tH_92Zh ...
Doctype作用?严格模式与混杂模式如何区分?它们有何意义?
怪异模式和严格模式(译注:一般称为标准模式:Standards Mode,下文中的严格模式都可以理解为标准模式)是浏览器解析 CSS 时的两种‘模式’。这篇文章将简单阐述这两种模式之间的差异。 译注:一个网页一般由两部分组成即:HTML(Hypertext Markup Language)和 CSS(Cascade Style Sheets)。 HTML 负责描述网页的结构和内容(如标题,导航栏等),而 CSS 则负责网页的表现(外观)(如背景颜色,字体样式等)。
问题的产生:当 Netscape4(译注:网景公司早期的浏览器)和 IE4(微软公司早期的浏览器)实现 CSS 机制时,并没有遵循W3C提出的标准。Netscape4 提供了糟糕的支持,而 IE4 虽然接近标准,但依旧未能完全正确的支持标准。尽管 IE 5 修复了 IE4 许多的问题(bugs),但是依然延续 CSS 实现中的其它故障(主要是盒模型(box model)问题)。 为了保证自己的网站在不同的浏览器中都能正确展现,网页开发者不得不依据各个浏览器的自身的规范来使用 CSS。因此大部分网站的 CSS 实现并未 ...
使用原生JavaScript实现无缝公告轮播
实现效果 从下往上进行轮播 关键技术 setTimeout bind apply scrollTop scrollHeight 代码
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748//工厂模式var Class = {create:function(){return function(){this.init.apply(this,arguments);}}};Marquee = Class.create();Marquee.prototype={init:function(element,height){this.element = document.getElementById(element);this.height = height;this.element.innerHTML += this.element.innerHTML;this.maxHeight = this ...
移动端项目总结
从当初的项目构建,使用什么框架来进行搭建和模拟后台数据,到现在这个小项目基本完成 大概也花了近一个星期。 花的时间还是太多了,之前我写过类似这种的,但是使用的是原生 js 结合 jquery 来进行实现的 但是现在我选择的是使用的 angularjs 。 至于为什么要使用这个框架,其实我就是使用它的双向绑定功能以及里面的指令和模型等功能 为什么不适用 reactjs 都知道这两个库都有双向绑定功能 而且都是可以开发组件的 就是一点我不喜欢 jsx 虽然是 JavaScript 的加强版 但是 我始终喜欢不起来啊 所以还是使用 angular ,有人又要问了为什么不适用 angular2 正式版不是出来了么? 是的,虽然正式版已经出来但是 我使用过 Ionic2 使用 nodejs 热编译出来的打包 js 有两点多兆 试问我就这么一两个页面逻辑也不是很复杂为啥要用如此庞大的库 还不如使用 Vue 有点儿大材小用的感觉 。 说一说项目里面遇到的坑 第一个就是使用 iscroll 相信 开发移动端的朋友都用过这个库 其中使用过程中遇到了滚动内容区域无法进行点击 第一个我网上查了下 便 设置了 ...
使用JavaScript将秒格式化成01:25:02这样的格式 (非常简短)
使用场景: 需要将时间进行格式化的时候 ,不如后台传递到前台的是时间戳或者以秒为单位的时间数字 实现 需要使用到操作符 取余 % 除法 / 代码如下:
12345678910/*** time 秒为单位*/function secondToTime(time){var hours = Math.floor(time/3600);var minute = Math.floor(time%3600/60);var seconds = Math.ceil(time%3600%60);return (hours == 0 ? '' : hours > 0 && hours.toString().length<2 ? '0'+hours+':' : hours+':') +(minute.toString().length<2 ? '0'+minute+':' : minute+":")+(secon ...
JavaScript 实现堆栈Stack
最近的文章主要都是算法数据结构以及 JavaScript 设计模式的相关知识 记得大学的时候那时候大二的时候,我们是电子商务班,主要偏向于营销方面所以班上只有两个人专研技术这一方面 当初因为对电脑对网络对建站这方面非常感兴趣所以每天下课后都会寝室专研技术 然而大学里面最应该耍朋友的时间也没有了 现在想来真的有点儿后悔,但是也值得,学到了很多东西嘛 。记得后来在外包公司实习了几个月,那时候也是什么都做什么服务器配置搭建网站都在做, 最郁闷的是我们学校里面没有学习过 flash 和流媒体相关的东西但是最后自己也得学习 那个公司虽然有点儿坑当时工资也不高 但是学到了很多东西 现在想来真该谢谢他们 提供的学习环境,废话不多说我们直接上代码 什么是堆栈 在计算机科学中,是一种特殊的串行形式的数据结构,它的特殊之处在于只能允许在链结串行或阵列的一端(称为堆栈顶端指标,英语:top)进行加入资料(英语:push)和输出资料(英语:pop)的运算。另外堆栈也可以用一维阵列或连结串行的形式来完成。 根据定义我们知道栈只有三种操作:入栈(push),出栈(pop),获取栈顶元素(top)。而且栈只能够操纵 ...
JavaScript中关于列表的实现
最近无意中看见了一本叫做《JavaScript 数据结构与算法》的书 ,以前我对数据结构算法这些很不感冒,一听到这类比较恼火的也感觉很难的东西就退却三尺 ,但是现在 js 也可以运行在了服务器端我想算法和数据结构也有了用武之地。随着 nodejs 的发展推动了前端向更加自动化模块化 且能够开发大型应用的方向发展。所以学习算法和数据结构也是我们必须了解和掌握的基础知识。因为越向上面走,需要的基础知识要越踏实。俗话说得好树无根就无叶,说的就是打好基础的重要性。 好了废话不多说我们来说说数据结构中的列表的运用场景,主要用于数据不是很多也不是很复杂的情况,比如说购物车、音乐歌曲列表等。 下面列出适合和不适合使用列表的情况: 适合使用在:当列表的元素不是很多的情况下,可以使用列表,因为对列表中的元素查找或者排序时,效率还算非常高,反之:如果列表元素非常多的情况下,就不适合使用列表了。 一:列表的抽象数据类型定义 为了设计列表的抽象数据类型,我们需要给出列表的定义,包括列表应该拥有哪些属性,应该在列表上执行哪些操作等。 列表是一组有序的数据。每个列表中的数据项称为元素。在 javascript 中 ...
gulp 初步入门写第一个自己的任务
第一步 安装 gulp
1npm install gulp --save-dev
第二步 建立 gulpfile.js 这个文件 这里我们首先来使用 gulp 的第一个 concat 插件来合并 js 安装 gulp-concat
1npm install gulp-concat
第三步写代码 1.使用 require 引入 gulp 和 gulp-uglify
123var gulp = require("gulp");var concat = require('gulp-uglify');
2.使用管道 pipe 方法生成混淆过后的代码
1234567gulp.task('ugly',function(){gulp.src(['index.js','!gulpfile.js']).pipe(gulp_webpack(gulp_config,webpack))//配合webpack来进行编码需要加载配置文件.pipe(ungly())//压缩.pipe(gulp.des ...
gulp 初步入门 用nodejs粗糙地玩儿一回js编译
第一步:安装 gulp(这之前你得确保安装了稳定版地 nodejs 或者最新版本地 nodejs) 然后执行如下命令安装 gulp
1npm install gulp --save-dev
然后按照如下目录创建文件 (需要创建 package.json 文件 需要指定 main:’laike.js’ 这个你可以根据你自己地项目进行改变) 还需要在最外层添加一个 index.js 第二步 编写代码 在最外层地 index.js 里面编写如下代码
123456789101112131415161718192021222324252627var md=require('laike');md.showname();var fs = require('fs');function generalcode(key,value){return 'var '+key+' = '+value+';\n';}//首先清空文档fs.writeFile('./build/buil ...
javascript原生实现日历组件(比较简单的一个组件)
组件名称:原生实现日历组件使用到的关键技术:html5、date 对象相关方法、animate、transform 等技术使用范围:任何支持 css3 技术的现在浏览器 推荐使用谷歌浏览器内核的浏览器相关代码See the Pen Calendar by laikedou (@laikedou) on CodePen.


