自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

新的启程的博客

前端JavaScript html5 css3 后端 php nodejs express 技术博客

  • 博客(42)
  • 资源 (3)
  • 收藏
  • 关注

原创 从此不求人:自主研发一套PHP前端开发框架(12)

我们要来设计一个方法Model专有的load函数,保证每个Model都有load函数,能通过一定条件加载这个Model 。接下来我们以UserModel为例来讲解一下 1.类似 Control 一样我们来设计一个Model的基类(抽象类),譬如_Model 2.让我们的UserModel继承与_Model,注意 以后每个Model都要继承它 3.在_Model中写一个load函数,接受参数(可

2016-03-30 10:47:06 559

原创 从此不求人:自主研发一套PHP前端开发框架(12)

我们要来设计一个方法Model专有的load函数,保证每个Model都有load函数,能通过一定条件加载这个Model 。接下来我们以UserModel为例来讲解一下 1.类似 Control 一样我们来设计一个Model的基类(抽象类),譬如_Model 2.让我们的UserModel继承与_Model,注意 以后每个Model都要继承它 3.在_Model中写一个load函数,接受参数(可

2016-03-29 17:27:09 401

原创 从此不求人:自主研发一套PHP前端开发框架(11)

在整个框架中往往我们需要做数据库的调用,这时我们应该采用拿来主义(以后客户突然换掉数据库的时候可以很方便进行移植) 1.通用(规范调用方式) 2.方便系统移植 3.多数据库易切换 4.第三方的类库足够优秀的让我们可以暂时不用学习第三方类库使用adodb php的版本代码(myDataBase.php)<?php require("adodb.inc.php"); class myData

2016-03-29 09:34:49 456

原创 lkmusic项目之(基础函数搭建一)

代码(因为使用到了最新的html5 api 所以不兼容低版本ie和其它一些不支持classList DOMList接口的现代浏览器)//基于smusic开源代码进行修改和加强(function(win){ //此音乐库采用全新的html5 api来对样式的增删改查进行操作 ie版本需要10.0以上 使用此音乐类库请特别注意低版本ie 已不再我的兼容列表里面 //至于为什么使用classLi

2016-03-28 15:15:59 419

原创 基于Smusic开源播放器的改版播放器 LKMusic正式开工

涉及技术 html css2 css3 javascript 原生 html5 new api (querySelector classList audo video pushState ….)采用全新的css3 flex布局技术实现。自适应各个主流平台浏览器兼容平台 (ie9.0+ edge safari chorme operia 以及国内某些极速浏览器webkit引擎的) 手机端兼容安卓 4.

2016-03-28 15:12:16 1149

原创 从此不求人:自主研发一套PHP前端开发框架(10)

步骤如下1 来到MVC下得Model文件夹 2.新建一个UserModel.inc 包含四个属性 user_id user_name user_email user_pass 3 在functions.php中写一个set_user函数,模拟用户登录成功 4 完善the_user函数来获取当前用户登录关于setcookiesetcookie()函数向客户端发送一个HTTP cookie 必须

2016-03-27 16:09:02 658

原创 从此不求人:自主研发一套PHP前端开发框架(9)

在整个框架中需要编写一些基本web使用函数来提供整个框架(尤其是V和C)来进行调用,以及第三方接入系统也可以调用 譬如: 1 过滤参数 2 获取当前登录用户(包含基本信息)获取当前用户ip等 3 判断一些状态(如用户是否登录、信息是否过期设置是权限) 4 加密和解密一些字符串 5 获取或设置缓存等我们把这些函数的命名规则定义一下1 the_XXX 系列 譬如 the_get(过滤参数)

2016-03-27 15:32:12 580

原创 从此不求人:自主研发一套PHP前端开发框架(8)

我们讲到了用Control来设置一些变量,函数如下1.setVar 设置变量,用以view来调用 this−>setVar(“title”,′测试网页标题′);我们今天来解决这个变量怎么能够在view中使用(也就是暴露变量怎么来进行暴露)譬如echothis->setVar(“title”,’测试网页标题’); 我们今天来解决这个变量怎么能够在view中使用(也就是暴露变量怎么来进行暴露)

2016-03-26 20:58:40 685

原创 从此不求人:自主研发一套PHP前端开发框架(7)

上次我们说道用Control来引导view的加载今天我们还要继续设计几个接口函数(_Master)中: 1.setVar :设置变量,用以view调用 2.setModel;我们最后一节课来讲 3.run();//封装部分index.php中的处理 如加载模板等实现代码:_Master.php<?php //所有controller的父类 抽象类 abstract class _M

2016-03-26 20:36:04 996

原创 从此不求人:自主研发一套PHP前端开发框架(6)

第一步:在_Master中1.新增一个变量view2.新增一个方法_view 2.新增一个方法setView;//用来对view赋值3.新增一个方法_view赋值 3.新增一个方法getView;//用来返回$_view变量的值 代码实现:_Master.php<?php //所有controller的父类 抽象类 abstract class _Master{ va

2016-03-26 20:30:17 538

原创 从此不求人:自主研发一套PHP前端开发框架(4)

所谓的拦截php现有流行 MVC是采用单一入口文件来完成 这个功能的,因为入口只有一个,自然可以实现过滤(拦截)的概念(包括get和post)第一步假设我们要通过 http://xxx/index.php?controller=index&action=showindex 来访问default(模板)下面的index.php 则:我们根据前几课设计的机制,首先在MVC/Controller下建

2016-03-25 10:59:49 636

原创 从此不求人:自主研发一套PHP前端开发框架(3)

框架主文件index.php (1.路由页面 2.中转页面)第一步加载全局框架配置文件第二步定制一个访问规则(路由分发功能)本框架设定是这样子的 http://xxx/index.php?controller=xx&action=xx 这是整个框架的关键部分: 代表index.php会根据这两个参数去寻找对应的Controller类,同时action代表在这个Controller类中要访问的方

2016-03-25 09:50:56 662

原创 从此不求人:自主研发一套PHP前端开发框架(2)

框架主目录首先有个框架主目录(注意:和index.php以及lkphp.conf同级) (纯粹是为了svn和git等其他版本控制工具操作便利) 1.里面可以放各种业务处理 2.以及我们即将要涉及到的MVC模式 3.模板文件(最好是带版本号,或主题名) 4.其他(待拓展)安全性1.只有根目录下的index.php和指定目录下面的*.php可以被直接访问 2.其余指定目录(可以进行配置)中的

2016-03-24 10:43:08 893

原创 从此不求人:自主研发一套PHP前端开发框架 (1)

课程必备知识1.php_apache+mysql 2.有基本php 开发基础 3.了解jquery 4.不怕苦、不怕累(想把技术变成利润)本课程使用工具清单:1.php >5.3 2.mysql >5.0 3.apache >2.2开发工具Hbuilder 1.任性 2.提示性号 php插件支持好 3.html5支持好 我喜欢sublime自己取名我取名为 lkphpgithu

2016-03-24 10:32:11 929

原创 基于ecshop的移动端 etouch实现动态获取分类商品列表

修改文件 category.php关键两个地方需要修改 if ($_GET['act'] == 'asynclist') { $sayList = array(); if (is_array($goodslist)) { foreach ($goodslist as $vo) { $shop_price =

2016-03-24 09:55:01 1032

原创 ecshop之实现取消收藏功能

找到根目录下面的 user.php/* 添加收藏商品(ajax) */elseif ($action == 'collect'){ include_once(ROOT_PATH .'include/cls_json.php'); $json = new JSON(); $result = array('error' => 0, 'message' => '');

2016-03-24 09:49:25 3192

原创 基于服务器端推送事件的comet技术

html代码部分 comet.html<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>基于服务器端推送事件的comet技术</title> <style type="text/css" me

2016-03-22 16:23:40 316

原创 Git权威指南第一章 版本控制的前世今生(一)

第一章

2016-03-22 12:01:36 444

原创 借助script发送http请求:jsonp

function getJSONP(url,callback){ var cbnum ='cb'+getJSONP.counter++; var cbname = 'getJSONP.'+cbnum; if(url.indexOf('?') === -1) url += '?jsonp='+cbname; else url += '&jsonp='+cbname;

2016-03-21 17:57:46 1480

原创 数据结构与算法javascript描述之队列

队列概述队列是一种列表,不同的是队列只能在队尾插入元素,在队首删除元素。队列用于存储按顺序排列的数据,先进先出,这点和栈不一样,在栈中是后入先出,最后入栈的元素反而被优先处理。可以将队列想象成在银行钱排队的人群,排在最前面的人第一个办理业务,新来的人只能在后面排队,知道轮到他们为止。 队列是一种先进先出的数据结构。队列被用在很多地方,比如提交操作系统执行的一系列进程、打印任务池等,一些仿

2016-03-21 13:45:27 390

原创 javascript算法与数据结构之栈

栈的概述 列表是一种最自然的数据组织方式,如果数据存储顺序不重要,也不必对数据进行查找,那么列表就是一种再好不过的数据结构。对于其他一些应用,列表就显得太过简陋了,我们需要某种和列表类似但是更复杂的数据结构。 栈就是和列表类似的一种数据结构,它可用来解决计算机世界里的很多问题。栈是一种高效的数据结构,因为数据只能在栈顶添加或者删除,所以这样的操作很快,而且容易实现。栈的使用遍布程

2016-03-21 11:57:41 346

转载 JavaScript学习笔记:数组求和方法(待续中...)

通过最近学习,越来越感觉JavaScript的强大与魅力之处,仅数组一个知识点就让我这样的初学者折腾了很久。折腾是折腾,但还是很有效果的,这几天的学习到的一些基本知识,就在自己的业务就用到了。顿感自信心爆棚,我也有一天能学会JavaScript。别的不多说了,咱们今天一起来玩数组的求和,看看有哪些方法可以实现数组的求和。数组方法 JavaScript中数组有很多种方法,下图能更好的向你阐述Ja

2016-03-18 17:21:59 647

原创 跨域HTTP请求

HTML部分<a href="http://img5.imgtn.bdimg.com/it/u=1478257864,2882073929&fm=21&gp=0.jpg" >测试1</a><a href="http://apis.baidu.com/apistore/weatherservice/citylist" >测试2</a><a href="http://apis.baidu.com/a

2016-03-18 14:36:20 1507

转载 使用 Sass 美化表单控件(一)

表单控件在网页设计中无疑是占有重要地位的。由于表单控件是用户频繁使用到的页面元素,所以有必要使用 Sass 来快速美化项目中的表单控件。占位符 占位符,可以用来提示用户当前输入框所需要的信息。只有当 type 类型为 text,search,tel,url 或 email 时,表单控件的占位符属性才会生效,其他类型下会被自动忽略。不足之处在于,使用占位符需要配合恰当的浏览器伪元素前缀,所以,开

2016-03-18 11:12:03 356

原创 使用XMLHttpRequest 实现http 终止请求和超时

可以通过调用XMLHttpRequest对象的abort方法来取消正在进行的http请求 abort方法在所有的XMLHttpRequest版本和XHR2中可用,调用abort方法在这个对象上触发abort事件//终止请求和超时function timeedGetText(url,timeout,callback){ var xhr = new XMLHttpRequest();

2016-03-17 17:43:40 10470

原创 Swiper 简单使用

什么是swiper Swiper 是一款免费以及轻量级的移动设备触控滑块的js框架,使用硬件加速过渡(如果该设备支持的话)。主要使用于移动端的网站、移动web apps,native apps和hybrid apps。主要是为IOS而设计的,同时,在Android、WP8系统也有着良好的用户体验,Swiper从3.0开始不再全面支持PC端。因此,如需在PC上兼容更多的浏览器,可以选择Swiper

2016-03-17 11:44:44 3910 1

原创 基于Ecshop 的移动端商品分类页面总结

全面基于ajaxcategory_all.dwt html代码<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <!--<meta name="viewport" content="width=device-wid

2016-03-17 11:34:34 3839

原创 基于zepto的移动端弹出窗口插件

scss代码部分$browser-default-font-size:20px !default;$default-font-color:#999;$header-top-offset:pxTorem(20px);$calc-width:'-webkit-calc(100% - 1rem)';@function pxTorem($px) { @return $px / $browse

2016-03-16 17:37:27 10113 1

转载 Emmet:HTML/CSS代码快速编写神器(转载)

Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生。它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: 去年年底,该插件已经改名为Emmet。但Emmet不只改名,还带来了一些新特性。本文就来直观地演示给你。 一、快速编写HTML代码1. 初始化 HTML文档需要包含一些固定的标签,比如、、等,

2016-03-15 14:56:26 501

原创 Jquery 之DOM文档操作(一)

插入和替换元素$('#log').append('<br/>'+mesage);//在id为log的元素的结尾添加内容$('h1').prepend('$');//在每个h1标签起始处添加一个美元符号$('h1').before('<hr/>');//在每个h1 标签前面添加一条水平线$('h1').after('<hr/>');//在每个h1标签后面添加一条水平线$('h1').repla

2016-03-14 17:45:01 286

原创 ectouch 实现按需加载商品信息(Jquery 2.1.1 插件版本)

插件需求实现用户在手机端下拉商品信息时实现按需动态加载相关技术jquery ajax css3 html页面代码(仅供参考代码结构)<div class="ycd-js-container"> <div class="swiper-container" id="swiper-container2" > <div class="swiper-wrapper

2016-03-14 17:21:51 2086

原创 html表单结合php实现上传文件功能并且监控文件上传的进度

html代码<html><body><form action="upload_file.php" method="post"enctype="multipart/form-data"><label for="file">Filename:</label><input type="file" name="file" id="file" /> <br /><input type="submi

2016-03-11 18:09:14 1964

原创 http上传文件和进度监控以及构造multipart/form-data请求

http上传文件html代码<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>http</title> <link rel="stylesheet" href=""> <script

2016-03-10 17:17:27 7161

转载 移动端H5页面高清多屏适配方案(经典)

视觉稿在前端开发之前,视觉MM会给我们一个psd文件,称之为视觉稿。对于移动端开发而言,为了做到页面高清的效果,视觉稿的规范往往会遵循以下两点:1)首先,选取一款手机的屏幕宽高作为基准(以前是iPhone4的320×480,现在更多的是iphone6的375×667)。2)对于retina屏幕(如: dpr=2),为了达到高清效果,视觉稿的画布大小会是基准的2倍,也就是说像素点个数是原来的4倍(对i

2016-03-10 11:43:25 2658

原创 脚本化http(一)

http协议概述兼容的XMLHttpRequest写法//为了兼容低版本的ie浏览器我们需要这样来写兼容代码if(window.XMLHttpRequest === undefined){ window.XMLHttpRequest = function(){ try{ return new ActiveObject('Msxml2.XMLHTTP

2016-03-08 22:02:04 594

转载 30分钟学会使用grunt打包前端代码(四)

30分钟学会使用grunt打包前端代码(四)require与模板文件我们知道,模板文件一般都是html,比如我们这里的demo01.html,对于这个文件我们应该怎么打包呢?其实很简单……需要干两件事情:① 引入require.text② 加入模板文件{ "requirejs": { "options": { "baseUrl": "./", "paths": {

2016-03-08 21:48:17 458

转载 30分钟学会使用grunt打包前端代码(三)

30分钟学会使用grunt打包前端代码(三)配置任务/grunt.initConfig前面我们简单的介绍了grunt相关的知识,这里我们这里还需要再熟悉下Gruntfile相关的知识点,比如说配置任务grunt的任务配置都是在Gruntfile中的grunt.initConfig方法中指定的,这个配置主要都是一些命名性属性 比如我们上次用到的合并以及压缩的任务配置:grunt.initConfig

2016-03-08 09:48:56 477

原创 数据结构和算法 (javascript版本)之列表

列表概述日常生活中,人们经常使用列表:待办事项列表、购物清单、歌词列表、歌曲列表等 注意:如果数据结构非常复杂那么列表的意义就不大了1.列表的抽象 列表属性 意义 listSize(attribute) 列表的元素个数 pos(attribute) 列表的当前位置 length(attribute) 返回列表中元素的个数 clear(method) 清空列表中

2016-03-07 11:24:54 425

转载 30分钟学会使用grunt打包前端代码(二)

30分钟学会使用grunt打包前端代码(一)合并文件依赖于grunt-contrib-concat插件,所以我们的package依赖项要新增一项"devDependencies": { "grunt": "~0.4.1", "grunt-contrib-jshint": "~0.6.3", "grunt-contrib-concat": "~0.3.0", "grunt-contri

2016-03-07 10:16:28 494

转载 30分钟学会使用grunt打包前端代码(一)

30分钟学会使用grunt打包前端代码(一)grunt 是一套前端自动化工具,一个基于nodeJs的命令行工具,一般用于: ① 压缩文件 ② 合并文件 ③ 简单语法检查 对于其他用法,我还不太清楚,我们这里简单介绍下grunt的压缩、合并文件,初学,有误请包涵准备阶段 1、nodeJs环境因为grunt是基于nodeJs的,所以首先各位需要安装nodeJS环境,这

2016-03-04 11:44:33 486

100个直接可以拿来用的JavaScript实用功能代码片段

100个直接可以拿来用的JavaScript实用功能代码片段

2016-03-07

食材供应链电商服务系统设计方案v1.0.doc

食材供应链电商服务系统设计方案v1.0.doc 买菜网的微信客户端开发方案

2016-03-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除