WebSql的原理是浏览器集成了sqllite数据库,Js操作,浏览器协助完成,没有多复杂。
<!--
三个核心方法
openDatabase:这个方法使用现有数据库或创建新的数据库
transaction:这个方法允许我们根据情况控制事务提交或者回滚
executeSql:执行sql查询
应用:离线词典
-->
<script>
//检测浏览器是否支持websql
if(window.openDatabase){
//创建或者使用数据库
var conn=openDatabase('think-shop','1.0',1024*1024,function(){});
//控制事务控制提交或者回滚
conn.transaction(function(fx){
/*
//1.执行sql,创建表结构
fx.executeSql(
"create table member(id int,name varchar)",
[],
function(){
//成功自动执行
console.log('创建成功!');
},
function(){
//失败自动执行
console.log('创建失败!');
}
);
*/
/*
//2.执行sql,新增数据到表
fx.executeSql(
"insert into member(id,name) values(?,?)",
[1,'张三'],
function(){
//成功自动执行
console.log('新增成功!');
},
function(){
//失败自动执行
console.log('新增失败!');
}
);
*/
/*
//3.执行sql,更新数据
fx.executeSql(
"update member set name=? where id=?",
['李四',1],
function(){
//成功自动执行
console.log('修改成功!');
},
function(){
//失败自动执行
console.log('修改失败!');
}
);
*/
/*
//4.执行sql,查询数据
fx.executeSql(
"select * from member where id=?",
[1],
function(fx,result){
//成功自动执行
console.log('查询成功!数据如下:');
console.log(result);
},
function(){
//失败自动执行
console.log('查询失败!');
}
);
*/
//5.执行sql,删除数据
fx.executeSql(
"delete from member where id=?",
[1],
function(fx,result){
//成功自动执行
console.log('删除成功!数据如下:');
console.log(result);
},
function(){
//失败自动执行
console.log('删除失败!');
}
);
});
}
else{
console.log('浏览器不支持!');
}
</script> 由于工作需要长期使用Ajax,一个页面重复的AJAX请求太多,于是封装起来,只需要编写回调函数/* ------------- 使用方法: 1.ajaxrequest()函数执行准备的参数(1.请求地址2.发送数据字符串拼接3.type值可选get/post4.回调函数名称) exam...
window.setInterval(method,time)方法本身会返回一个资源句柄,使用clearInterval(Intervalid)方法即可清除定时器<script> var num=0; //每隔1秒再控制台输...
离线缓存的开启实例使用apache设置 1.apache配置文件搜索Addtype,我的addtype已经存在项目,如下 AddType application/x-compress .Z AddType application/x-gz...
开发需求如下,商品下单后需要指定送到日期:送达日期为周一 周三 周六 ,如果今天周一,用户选择周一即为下一周周一。代码如下:<html> <head> <meta charset="utf-8"> <title>...
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> ...
二期项目中生成的简历二维码是使用canvs生成的,微信浏览器中不能识别二维码,只能扫码。懒的换phpqrcode,于是转canvs。//设置一个url var url = "{yun:}$config.sy_weburl{/yun}/mingli/index....