html5移動(dòng)端調(diào)用手機(jī)攝像頭掃描二維碼并獲取二維碼信息代碼如下:
創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比鄂州網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式鄂州網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋鄂州地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。
[html]?view plain?copy
!DOCTYPE?html
htmlhead
titleHTML5?code?Reader/title
meta?http-equiv="Content-Type"?content="text/html;?charset=gb2312"
/head
style?type="text/css"
html,?body?{?height:?100%;?width:?100%;?text-align:center;?}
/style
script?src="jquery-1.9.1.js"/script
script
//這段代?主要是獲取攝像頭的視頻流并顯示在Video?簽中
var?canvas=null,context=null,video=null;
window.addEventListener("DOMContentLoaded",?function?()
{
try{
canvas?=?document.getElementById("canvas");
context?=?canvas.getContext("2d");
video?=?document.getElementById("video");
var?videoObj?=?{?"video":?true,audio:false},
flag=true,
MediaErr?=?function?(error)
{
flag=false;
if?(error.PERMISSION_DENIED)
{
alert('用戶拒絕了瀏覽器請(qǐng)求媒體的權(quán)限',?'提示');
}?else?if?(error.NOT_SUPPORTED_ERROR)?{
alert('對(duì)不起,您的瀏覽器不支持拍照功能,請(qǐng)使用其他瀏覽器',?'提示');
}?else?if?(error.MANDATORY_UNSATISFIED_ERROR)?{
alert('指定的媒體類型未接收到媒體流',?'提示');
}?else?{
alert('系統(tǒng)未能獲取到攝像頭,請(qǐng)確保攝像頭已正確安裝。或嘗試刷新頁(yè)面,重試',?'提示');
}
};
//獲取媒體的兼容代碼,目前只支持(Firefox,Chrome,Opera)
if?(navigator.getUserMedia)
{
//qq瀏覽器不支持
if?(navigator.userAgent.indexOf('MQQBrowser')??-1)?{
alert('對(duì)不起,您的瀏覽器不支持拍照功能,請(qǐng)使用其他瀏覽器',?'提示');
return?false;
}
navigator.getUserMedia(videoObj,?function?(stream)?{
video.src?=?stream;
video.play();
},?MediaErr);
}
else?if(navigator.webkitGetUserMedia)
{
navigator.webkitGetUserMedia(videoObj,?function?(stream)
{
video.src?=?window.webkitURL.createObjectURL(stream);
video.play();
},?MediaErr);
}
else?if?(navigator.mozGetUserMedia)
{
navigator.mozGetUserMedia(videoObj,?function?(stream)?{
video.src?=?window.URL.createObjectURL(stream);
video.play();
},?MediaErr);
}
else?if?(navigator.msGetUserMedia)
{
navigator.msGetUserMedia(videoObj,?function?(stream)?{
$(document).scrollTop($(window).height());
video.src?=?window.URL.createObjectURL(stream);
video.play();
},?MediaErr);
}else{
alert('對(duì)不起,您的瀏覽器不支持拍照功能,請(qǐng)使用其他瀏覽器');
return?false;
}
if(flag){
alert('為了獲得更準(zhǔn)確的測(cè)試結(jié)果,請(qǐng)盡量將二維碼置于框中,然后進(jìn)行拍攝、掃描。?請(qǐng)確保瀏覽器有權(quán)限使用攝像功能');
}
//這個(gè)是拍照按鈕的事件,
$("#snap").click(function?()?{startPat();}).show();
}catch(e){
printHtml("瀏覽器不支持HTML5?CANVAS");
}
},?false);
//打印內(nèi)容到頁(yè)面
function?printHtml(content){
$(window.document.body).append(content+"br/");
}
//開始拍照
function?startPat(){
setTimeout(function(){//防止調(diào)用過(guò)快
if(context)
{
context.drawImage(video,?0,?0,?320,?320);
CatchCode();
}
},200);
}
//抓屏獲取圖像流,并上傳到服務(wù)器
function?CatchCode()?{
if(canvas!=null)
{
//以下開始編?數(shù)據(jù)
var?imgData?=?canvas.toDataURL();
//將圖像轉(zhuǎn)換為base64數(shù)據(jù)
var?base64Data?=?imgData;//.substr(22);?//在前端截取22位之后的字符串作為圖像數(shù)據(jù)
//開始異步上
$.post("saveimg.php",?{?"img":?base64Data?},function?(result)
{
printHtml("解析結(jié)果:"+result.data);
if?(result.status?==?"success"??result.data!="")
{
printHtml("解析結(jié)果成功!");
}else{
startPat();//如果沒有解析出來(lái)則重新抓拍解析
}
},"json");
}
}
/script
body
div?id="support"/div
div?id="contentHolder"
video?id="video"?width="320"?height="320"?autoplay
/video
canvas?style="display:none;?background-color:#F00;"?id="canvas"?width="320"?height="320"
/canvas?br/
button?id="snap"?style="display:none;?height:50px;?width:120px;"開始掃描/button
/div
/body/html
1.解決的問(wèn)題:
1.能夠在微博客戶端呼起攝像頭掃描二維碼并且解析;
2.能夠在原生瀏覽器和微信客戶端中掃描二維碼并且解析;
2.優(yōu)點(diǎn):
web端或者是 h5端可以直接完成掃碼的工作;
3.缺點(diǎn):
圖片不清晰很容易解析失敗(拍照掃描圖片需要鏡頭離二維碼的距離很近),相對(duì)于 native 呼起的攝像頭解析會(huì)有1-2秒的延時(shí)。
說(shuō)明:
此插件需要配合zepto.js 或者 jQuery.js使用
使用方法:
1.在需要使用的頁(yè)面按照下面順序引入lib目錄下的 js 文件
復(fù)制代碼
代碼如下:
script src="lib/zepto.js"/script
script src="lib/qrcode.lib.min.js"/script
script src="lib/qrcode.js"/script
HTML5項(xiàng)目是指以HTML5技術(shù)架構(gòu)開發(fā)的個(gè)人網(wǎng)絡(luò)金融產(chǎn)品和服務(wù)應(yīng)用,同時(shí)可滿足移動(dòng)端瀏覽器、二維碼掃碼跳轉(zhuǎn)及PC端WEB瀏覽器訪問(wèn)使用。
H5項(xiàng)目主要應(yīng)用場(chǎng)景分為線上及線下渠道。線上渠道主要包括我行彩練APP、上海分行官方微信及第三方合作機(jī)構(gòu)官方渠道(以下簡(jiǎn)稱“第三方平臺(tái)”,包括但不限于非我行的APP、官方微信及PC端等渠道)等;線下渠道為利用我行H5項(xiàng)目URL鏈接通過(guò)技術(shù)手段生成的二維碼布放在我行網(wǎng)點(diǎn)或第三方合作機(jī)構(gòu)的線下營(yíng)業(yè)機(jī)構(gòu),供您掃描二維碼后使用我行的H5項(xiàng)目的服務(wù)模式。
以上內(nèi)容供您參考,最新業(yè)務(wù)變動(dòng)請(qǐng)以中行官網(wǎng)公布為準(zhǔn)。
如有疑問(wèn),歡迎咨詢中國(guó)銀行在線客服或下載使用中國(guó)銀行手機(jī)銀行APP咨詢、辦理相關(guān)業(yè)務(wù)。
如果你已經(jīng)制作了一個(gè)html網(wǎng)頁(yè),還需要把這個(gè)網(wǎng)頁(yè)部署到服務(wù)器上,并且綁定外網(wǎng)ip(如果想做完善還需要申請(qǐng)并綁定域名),然后產(chǎn)生這個(gè)網(wǎng)頁(yè)的網(wǎng)址,再將網(wǎng)址生成一個(gè)二維碼就完成了。當(dāng)掃碼設(shè)備掃描這個(gè)二維碼時(shí),就會(huì)訪問(wèn)到你制作的網(wǎng)頁(yè)了。
如果不想太麻煩,省略掉服務(wù)器、外網(wǎng)ip、域名等中間環(huán)節(jié),直接掃碼就訪問(wèn)自己制作網(wǎng)頁(yè),可以百度一下二維碼網(wǎng)頁(yè)制作平臺(tái),好用且免費(fèi)有 多零二維碼網(wǎng)頁(yè),希望能幫到你。
微信支付官方現(xiàn)在提供了免費(fèi)的掃碼點(diǎn)餐系統(tǒng),0成本接入,商家可以在店內(nèi)張貼海報(bào),叫號(hào)取餐,也可以貼下單桌貼,配送到桌。兩種模式均可讓顧客不用排隊(duì)點(diǎn)單,也替老板節(jié)省人工成本。快來(lái)看看怎么使用吧!
菜單錄入和管理 :
第一步:上傳商品
微信內(nèi)搜索【微信收款商業(yè)版】官方公眾號(hào),進(jìn)入“微信收款商業(yè)版小程序”。如果還未開通微信收款商業(yè)版的商家,需先開通商業(yè)版;已經(jīng)開通過(guò)的商家,可以點(diǎn)擊 “開啟掃碼點(diǎn)餐”,然后開始上傳商品,添加圖片、商品名稱、價(jià)格,完成后點(diǎn)擊“下一步”。
第二步:保存點(diǎn)餐碼
商品添加完成,進(jìn)入“選擇并保存點(diǎn)餐碼”,選擇桌貼或者海報(bào),保存即可。新手指引可以先選一個(gè),后面會(huì)有保存點(diǎn)餐碼入口隨時(shí)自行保存。或購(gòu)買官方物料(桌貼適合配送到桌的商家,目前僅支持 1-12 桌;海報(bào)適合商家叫號(hào),顧客支付成功后會(huì)收到服務(wù)通知,通知顧客來(lái)取餐/到店自提。)
第三步:完成新手流程。
可選擇繼續(xù)添加商品,或選擇稍后添加,回到“管理商品”主頁(yè)。
第四步:店鋪管理
從“商品管理”返回后,商家可以看到累計(jì)訂單和累計(jì)收入,可以隨時(shí)保存點(diǎn)餐碼,還可以管理店員,進(jìn)入“店員管理”可以增加或者刪除掃碼點(diǎn)餐的店員。
完成以上步驟顧客只需掃描商家提供的桌貼或海報(bào)二維碼點(diǎn)餐,支付成功后就會(huì)收到服務(wù)通知,通知顧客桌號(hào)信息和取餐碼;商家就可以取號(hào)叫餐或者配送到桌啦!
* 以iphone 12型號(hào)手機(jī),iOS14.6系統(tǒng)版本,8.0.6微信版本為例子,不同型號(hào)版本手機(jī)操作通用。
這個(gè)怎么判斷?沒后臺(tái)光靠頁(yè)面根本無(wú)法判斷。你根本就不可能知道用戶是不是掃碼,本來(lái)手機(jī)掃碼的行為就和頁(yè)面無(wú)關(guān),頁(yè)面的數(shù)據(jù)變化要么是來(lái)源于后臺(tái),要么是用戶進(jìn)行了操作。