当前位置: 首页 > news >正文

萍乡网站建设哪家好哦网站建设yu

萍乡网站建设哪家好哦,网站建设yu,郑州网页制作案例,青海西宁今天刚刚紧急通知本文示例建立在本站helloweba.net两篇文章之上#xff0c;一篇是用于在线拍照的#xff1a;JavascriptPHP实现在线拍照功能#xff0c;另一篇是用于浏览照片的#xff1a;Fancybox丰富的弹出层效果。如果您对在线拍照和Fancybox不大了解#xff0c;可以先参照以上两篇文章…本文示例建立在本站helloweba.net两篇文章之上一篇是用于在线拍照的JavascriptPHP实现在线拍照功能另一篇是用于浏览照片的Fancybox丰富的弹出层效果。如果您对在线拍照和Fancybox不大了解可以先参照以上两篇文章。HTML首先我们要建立一个主页面index.html来展示最新上传的照片我们使用jQuery来获取最新的照片所以这是一个HTML页面不需要PHP标签当然还要建立一个包括用来拍照和上传交互所需的HTML结构。拍照取消 classbtn_green上传我们在body间加入了以上html代码其中#photos用来加载展示最新上传的照片#camera用于加载摄像模块包括调用摄像flash组件webcam以及拍照和上传等按钮。此外我们还需要在index.html加载必须的js文件包括jQuery库fancybox插件flash摄像组件webcam.js以及本示例组合各种操作所需的script.js。CSS为了能给大家呈现一个相当美观的前端界面我们使用了css3来实现一些阴影、圆角和透明度效果请看#photos{width:80%; margin:40px auto}#photos:hover a{opacity:0.5}#photos a:hover{opacity:1}#camera{width:598px; height:525px; position:fixed; bottom:-466px; left:50%; margin-left:-300px;border:1px solid #f0f0f0; background:url(images/cam_bg.jpg) repeat-y; -moz-border-radius:4px 4px 0 0; -webkit-border-radius:4px 4px 0 0; border-radius:4px 4px 0 0; -moz-box-shadow:0 0 4px rgba(0,0,0,0.6); -webkit-box-shadow:0 0 4px rgba(0,0,0,0.6); box-shadow:0 0 4px rgba(0,0,0,0.6);}#cam{width:100%; height:66px; display:block; position:absolute; top:0; left:0; background:url(images/cam.png) no-repeat center center; cursor:pointer}#webcam{width:520px; height:370px; margin:66px auto 22px; line-height:360px; background:#ccc;color:#666; text-align:center}.button_pane{text-align:center;}.btn_blue,.btn_green{width:99px; height:38px; line-height:32px; margin:0 4px; border:none;display:inline-block; text-align:center; font-size:14px; color:#fff !important;text-shadow:1px 1px 1px #277c9b; background:url(images/buttons.png) no-repeat}.btn_green{background:url(images/buttons.png) no-repeat right top;text-shadow:1px 1px 1px #498917;}.hidden{display:none}这样你在预览index.html时会发现在页面的正下方有一个摄像头按钮默认是折叠的。接下来我们要做的是使用jQuery实现通过单击页面正下方摄像头按钮调用摄像头组件并且完成拍照、取消和上传所需的动作。jQuery这一切的交互动作所需的js我们都写在script.js文件中。首先我们需要加载摄像头组件webcam.js关于webcam的调用可以看下本站文章JavascriptPHP实现在线拍照功能。调用方法如下script.js-Part 1$(function(){webcam.set_swf_url(js/webcam.swf); //载入flash摄像组件的路径webcam.set_api_url(upload.php);// 上传照片的PHP后端处理文件webcam.set_quality(80);// 设置图像质量webcam.set_shutter_sound(true, js/shutter.mp3); //设置拍照声音拍照时会发出“咔嚓”声var cam $(#webcam);cam.html(webcam.get_html(cam.width(), cam.height()) //在#webcam中载入摄像组件);这时还看不到载入摄像头效果因为#camera默认是折叠的继续在script.js中加入以下代码script.js-Part 2var camera $(#camera);var shown false;$(#cam).click(function(){if(shown){camera.animate({bottom:-466});}else {camera.animate({bottom:-5});}shown !shown;});当单击页面正下方的摄像头按钮时默认折叠的摄像区会向上展开这时如果您的机器安装有摄像头则会加载摄像组件进行摄像了。接下来通过单击“拍照”完成拍照功能单击“取消”则取消刚刚所拍的照片单击“上传”则将所拍的照片上传到服务器。script.js-Part 3//拍照$(#btn_shoot).click(function(){webcam.freeze(); //冻结webcam摄像头停止工作$(#shoot).hide(); //隐藏拍照按钮$(#upload).show(); //显示取消和上传按钮return false;});//取消拍照$(#btn_cancel).click(function(){webcam.reset(); //重置webcam摄像头重新工作$(#shoot).show(); //显示拍照按钮$(#upload).hide(); //隐藏取消和上传按钮return false;});//上传照片$(#btn_upload).click(function(){webcam.upload(); //上传webcam.reset();//重置webcam摄像头重新工作$(#shoot).show();//显示拍照按钮$(#upload).hide(); //隐藏取消和上传按钮return false;});点击“上传”按钮后所拍的照片会提交给后台PHP处理PHP将照片进行命名和存盘入库操作请看PHP是如何操作上传照片的。PHPupload.php所做的事情有获取上传的照片命名判断是否合法的图片生成缩略图存盘写入数据库返回JSON信息给前端。$folder uploads/; //上传照片保存路径$filename date(YmdHis).rand()..jpg; //命名照片名称$original $folder.$filename;$input file_get_contents(php://input);if(md5($input) 7d4df9cc423720b7f1f3d672b89362be){exit; //如果上传的是空白的照片则终止程序}$result file_put_contents($original, $input);if (!$result) {echo {error:1,message:文件目录不可写;};exit;}$info getimagesize($original);if($info[mime] ! image/jpeg){ //如果类型不是图片则删除unlink($original);exit;}//生成缩略图$origImage imagecreatefromjpeg($original);$newImage imagecreatetruecolor(154,110); //缩略图尺寸154x110imagecopyresampled($newImage,$origImage,0,0,0,0,154,110,520,370);imagejpeg($newImage,uploads/small_.$filename);//写入数据库include_once(connect.php);$time mktime();$sql insert into photobooth (pic,uploadtime)values($filename,$time);$res mysql_query($sql);if($res){//输出JSON信息echo {status:1,message:Success!,filename:.$filename.};}else{echo {error:1,message:Sorry,something goes wrong.;};}upload.php完成照片上传后最终会返回json格式的数据给前端摄像组件webcam调用现在我们回到script.js。jQuerywebcam通过set_hook方法捕捉到后台php返回信息onComplete表示上传完成onError则表示错做出错了。script.js-Part 4webcam.set_hook(onComplete, function(msg){msg $.parseJSON(msg); //解析jsonif(msg.error){alert(msg.message);}else {var pic ;$(#photos).prepend(pic); //将获取的照片信息插入到index.html的#photo里initFancyBox(); //调用fancybox插件}});webcam.set_hook(onError,function(e){cam.html(e);});//调用fancyboxfunction initFancyBox(){$(a[relgroup]).fancybox({transitionIn: elastic,transitionOut: elastic,cyclic : true});}说明一下上传成功后所拍的照片会通过以上js代码动态的插入到元素#photos里并且同时调用fancybox插件。这时点击刚刚上传的照片会呈现fancybox弹出层效果。注意动态生成的元素必须通过以上代码中的initFancyBox()函数来调用fancybox而不能直接通过fancybox()来调用否则将不会有弹出层效果。接下来script.js还需要做一件事就是动态载入最新的照片展示在页面上我们通过jquery的.getJSON()方法来完成ajax请求。script.js-Part 5function loadpic(){$.getJSON(getpic.php,function(json){if(json){$.each(json,function(index,array){ //循环json数据var pic ;$(#photos).prepend(pic);});}initFancyBox(); //调用fancybox插件});}loadpic();函数loadpic()向服务器getpic.php发送get请求并将返回的json数据进行解析将照片信息动态插入到元素#photos下并调用fancybox插件然后别忘了在页面载入后调用loadpic()。PHP最后由后台getpic.php来获取数据库中的上传图片并且返回json给前端。include_once(connect.php); //连接数据库//查询数据表中最新的50条记录$query mysql_query(select pic from photobooth order by id desc limit 50);while($rowmysql_fetch_array($query)){$arr[] array(pic $row[pic]);}//输出json数据echo json_encode($arr);最后附上数据photobooth结构CREATE TABLE photobooth (id int(11) NOT NULL auto_increment,pic varchar(50) NOT NULL,uploadtime int(10) NOT NULL,PRIMARY KEY (id)) ENGINEMyISAM DEFAULT CHARSETutf8;转载https://www.helloweba.net/javascript/179.html
http://wiki.neutronadmin.com/news/71567/

相关文章:

  • 培训教育行业网站建设方案企业年报网上申报入口官网
  • 外贸公司名称大全简单大气百度系优化
  • 成都招聘网站制作漳州市城乡和住房建设局网站
  • 用iis搭建网站哪些网站有任务做
  • 网站设计 宽度全渠道推广策划方案模板
  • 白之家 低成本做网站小程序代理公司哪家好
  • 国网法治建设网站合肥做双语外贸网站
  • 网站新闻被百度收录h5魔塔
  • 网站建设规范管理工作计算机软件开发培训学校
  • 重庆企业网站推广报价唐山市城市建设档案馆网站
  • 响应式建网站wordpress美食模板
  • h5四合一网站建设wordpress加速优化服务
  • 网站运营专员是干嘛的八大装修风格有哪些
  • 湖南建设人力资源湖南网站建设上海app软件开发
  • 快速网站排名怎么用wordpress
  • 网站买源代码安徽公司网站建设
  • 自豪地采用wordpress广州百度网站排名优化
  • 网站开发的方式米拓建站免费模板
  • 如何找网站开发人员网站建设的前期准备
  • 做网站的疑问有哪些怎么在百度首页做网站
  • 网站设计培训学校微信网站如何制作
  • 电商网站建站318全讯申请网址
  • 医疗网站建设行业现状手机ui设计网站
  • 网站设计评语基于微信公众号开发
  • 肇庆网络广州优化seo
  • 个人网站管理系统免费推广网站搭建
  • 建设的电影网站总是无法连接网页微信扫码登录
  • 公司做网站花销会计分录WordPress会员增值系统
  • 做的网站有营销效果吗在哪制作一个简单的网页
  • 福州网站建设哪家好保定建设网站公司